gpt4 book ai didi

Python:os.getcwd() 在安装的网络驱动器中随机失败

转载 作者:太空宇宙 更新时间:2023-11-03 19:44:50 24 4
gpt4 key购买 nike

我在 Debian 上使用 python3.7。我有一个网络驱动器,通常将其安装到 /media/N_drivedir_mode=0777file_mode=0777 。我通常在此网络驱动器中读取/写入文件没有问题。

偶尔,尤其是在安装驱动器后不久,如果我尝试使用 os.getcwd() 运行任何 Python 脚本(包括任何导入的库,如 pandas)我收到错误 FileNotFoundError: [Errno 2] No such file or directory 。如果我 cd 到本地驱动器 ( cd /media/ ),脚本运行正常。

做了一些阅读,听起来这个错误表明工作目录已被删除。然而,当我在 shell 中时,我仍然可以导航到目录、创建文件等。好像只是Python的os.getcwd()有问题。

更奇怪的是,这种行为是不可预测的。通常,如果我在安装驱动器后等待约 1 小时,相同的脚本将运行得很好。

我怀疑这可能与驱动器的安装方式有关?有什么解决办法吗?

最佳答案

对我来说,这似乎是安装问题,例如网盘会断开,重新连接。所以你的cwd并不更有效。注意:cwd 指向磁盘+inode,它不是名称(您将看到)。所以/media/a/media/a 不同重新连接后。

如果您正在寻找如何解决安装问题,那么您来错地方了。尝试 Unix&Linux 姊妹站点,或 Serverfault(也是姊妹站点)。

如果您正在寻找如何以编程方式解决问题:在脚本开头保存 cwd 并使用 os.path.join()在每次路径访问时,这样您就强制使用绝对路径,而不是相对路径,因此您应该位于正确的位置。如果您在断开连接期间碰巧读取了文件,则这不会保存。

关于Python:os.getcwd() 在安装的网络驱动器中随机失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60207347/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com