python - 如何检查文件是否已经打开(在同一进程中)

标签 python file-io raspbian python-3.5

我想通过 try catch 结构来具体实现这一点。

related question建议我可以这样做:

try:
    open(fileName, 'wb+')
except:
    print("File already opened!")
    raise

但是,这对我不起作用。我可以毫无问题地多次打开同一个文件:

fileObj1 = open(fileName, 'wb+')
fileObj2 = open(fileName, 'wb+')

是因为我有 Python 3.5 吗?或者因为我正在使用 Raspbian

感谢您的帮助!

最佳答案

您应该打开同一个文件,但将它们分配给不同的变量,如下所示:

file_obj = open(filename, "wb+")

if not file_obj.closed:
    print("File is already opened")

.closed 只检查文件是否被同一个 Python 进程打开。

关于python - 如何检查文件是否已经打开(在同一进程中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37515574/

相关文章:

c - 使用 C 套接字发送带有 VLAN 标记的数据包

python - 导入错误: cannot import name 'parameter_parser' from 'parser' (unknown location)

python - 使用python3中的tarfile模块从tar中提取文本文件

java - 在 Java 中传递命令行参数来复制文件名

javascript - 使用 Javascript 格式化纯文本的最快方法

linux - 安装:/未安装或选项错误

c++ - 在 C++11 中为 pthread 设置调度参数

python - 在 3D openGL 世界中创建 2D 界面的问题

python - 我想将 .csv 文件转换为 Numpy 数组

python - PySide QTreeWidget clear() 导致崩溃