python - 在对函数结果使用类型提示时,我应该使用“预期”类型吗?
问题描述
我的简单问题是如果结果可以采用多种类型,如何指定(类型提示)函数的结果值。
官方 PEP 484 文档声明使用“预期”类型(例如“这表明 name 参数的预期类型是 str。类似地,预期返回类型是 str。)
假设无论出于何种原因,该函数不仅可以返回 str 还可以返回 int 或 None 或任何类型。关键是它可能需要多次。
def get_first_name(last_name: str) -> ???:
“预期”类型是“预期”类型吗?所以str?还是我必须输入提示所有可能的类型?
提前谢谢了!
解决方案
当它说“预期类型”时,意味着类型检查器应该在实际类型不符合预期时发出警告。
Union
当参数或返回值可以是多种类型时,可以使用类型。并且使用类型None
来处理允许作为不存在值的占位符的特定情况。Optional
所以你会写:
def get_first_name(last_name: str) -> Optional[str]:
推荐阅读
- python - 从 json 文件中删除新行空格并在 pandas 数据框中读取它
- hyperledger-fabric - 超级账本结构 2.0
- java - 如何优化此代码以使其更快
- javascript - 为什么我从两个差异中得到相同的结果?
- python - 导入序列化程序时的 DRF ImportError 循环
- django - 使用 django 注册后如何加载相同的页面
- php - 如何使用 .htaccess 重定向非结构化链接,例如(https://example.com/digital-marketing.php/ercbierubcrei)?
- django - 无法在 reportlab 3.5.34 中格式化中断标签
- python - Django:如何在数据迁移中使用异步任务?
- react-native - ScrollToIndex 超出范围:请求索引 NaN,但最大值为 3 -- SwiperFlatList