将PyCharm更新到2017.1后,一个新的检查警告开始出现在一切看似简单和正确的地方。它看起来如下:
看起来open()
没有返回file
参数的预期类型,但代码非常简单,最重要的是,它可以按预期工作(使用Python 3.5.2)。 / p>
Python docs提到使用StringIO
的方式并确实删除了警告,但是是指定print
输出流的正确pythonic方式吗?如果是这样,为什么?这个警告很重要吗?
答案 0 :(得分:6)
我找到的唯一解决方案是正确输入提示PyCharm:
from typing import IO
with open('output_filename', 'w') as f: # type: IO[str]
print('some text to go to the file...', file=f)
这使PyCharm保持高兴,并且不会妨碍正确运行代码。