<分区>
是否会在文件句柄执行完成后调用 open() 而不将其分配给变量来关闭文件句柄?
import json
_keyfile = json.load(open("s3_key.json", "r"))
如果你在上面调用 .read() 会怎么样?
import json
_keyfile = json.loads(open("s3_key.json", "r").read())
标签 python python-3.x
<分区>
是否会在文件句柄执行完成后调用 open() 而不将其分配给变量来关闭文件句柄?
import json
_keyfile = json.load(open("s3_key.json", "r"))
如果你在上面调用 .read() 会怎么样?
import json
_keyfile = json.loads(open("s3_key.json", "r").read())
最佳答案
根据 python docs ,文件保持打开状态,直到您对文件对象调用 close()
或垃圾收集器启动并为您关闭它。
因此,在读取文件时更喜欢使用上下文管理器(即 with
语句),因为它们会为您关闭文件。
import json
with open("s3_key.json", "r") as f:
_keyfile = json.load(f)
# f is now closed
关于python - 单独的 open() 是否使文件句柄保持打开状态?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53146404/
相关文章:
Python - 每个日期和月份的所有非零列的计数 PANDAS
python - matplotlib.pyplot.axes.bbox 的定义
python - 为什么 concurrent.futures 不复制参数?
python - 用 Python 计算航空公司排名 - NameError : name is not defined
python - 如何为binary_crossentropy、activation=sigmoid和activation=softmax指定model.compile?
python - 在插入事件之前插入新日历 Google API 和删除日历事件(Python 中)