Mat*_* M. 9 types type-hinting python-3.x
我想输入提示这样的函数:
from types import Iterable
def func(thing: Iterable[str]) -> None:
for i in range(10):
for x in thing:
do_thing(x)
Run Code Online (Sandbox Code Playgroud)
PyCharm 将(正确地)让我摆脱向此函数传递生成器的麻烦,但我想以一种它不允许我这样做的方式输入提示,同时仍然接受其他可迭代对象。
使用Sequence[str]不是一个选项,像 KeyView 这样的可迭代对象不是序列,但我仍然希望能够包含它们。
有人提到使用 aUnion和Sequence+ KeyView,这可以工作,但我想知道是否有更优雅和通用的解决方案
当然,无论如何我都可以转换thing为 a ,但我宁愿正确地暗示这个函数类型。list
使用Python 3.7
| 归档时间: |
|
| 查看次数: |
518 次 |
| 最近记录: |