您能为使用with语法定义的变量定义类型提示吗?

with example() as x:
    print(x)

我想输入上面的提示来说明xstr(作为一个例子).

我发现唯一的解决方法是使用中间变量,但这感觉有点粗糙.

with example() as x:
    y: str = x
    print(y)

我找不到typing documentation个例子.

推荐答案

PEP 526已经在Python 3.6中实现,它允许您对变量进行注释.例如,你可以使用,

x: str
with example() as x:
    [...]

with example() as x:
    x: str
    [...]

Python-3.x相关问答推荐

为什么我必须在绘制椭圆时代码等于两次?''

如何在python中有效地使用多处理和pytube库来加快下载速度?

将strid()映射到Pandas DataFrame中的字符串不会更改NaN条目,但仍然声称它们不同?

无法使用Python发送带有参数和标头的POST请求

PANDAS中当前数据帧的匹配与更新

在特定条件下从 DataFrame 中提取特定组

如何通过 python 使用 auth no priv 获取 SNMPv3?

asyncio.as_completed() 应该接受 `Iterable`,但如果输入是 `Generator` 就会崩溃?

提高时间复杂度的一些建议

这种类型提示有什么作用?

Pandas 值列中列表中元素的计数

Django 2 个字段之一不能为空

两个字符串之间的正则表达式匹配?

如何从字典中打印特定键值?

使用 Python3 与 HDFS 交互的最佳模块是什么?

如何将 Matplotlib 图形转换为 PIL Image 对象(不保存图像)

导入父目录进行简要测试

如何在python中创建代码对象?

清除 PyCharm 运行窗口

调用 Python doctest 时如何启用省略号?