Wmb*_*uch 5 python list-comprehension with-statement
我遇到了这种用于读取文件中的行的语法。
with open(...) as f:
for line in f:
<do something with line>
Run Code Online (Sandbox Code Playgroud)
假设我希望该<do something with line>行将每一行附加到列表中。有没有什么方法可以with在列表理解中使用关键字来完成此任务?或者,至少有某种方法可以在一个语句中完成我想要的事情吗?
你可以写类似的东西
with open(...) as f:
l = [int(line) for line in f]
Run Code Online (Sandbox Code Playgroud)
但你不能将其放入with列表理解中。
也许可以写一些类似的东西
l = [int(line) for line in open(...).read().split("\n")]
Run Code Online (Sandbox Code Playgroud)
但您需要稍后手动调用 f.close() ,这样您就不会得到变量 f 。当超出范围时,filhandle 可能会自动关闭,但我不会依赖它。
| 归档时间: |
|
| 查看次数: |
5416 次 |
| 最近记录: |