gpt4 book ai didi

python - IO错误 : [Errno 2] No such file or directory writing in a file in home directory

转载 作者:太空狗 更新时间:2023-10-29 22:02:16 26 4
gpt4 key购买 nike

我在下面使用这段代码将一些文本存储在主目录中的文件 ~/.boto 中。

但是我得到这个错误:

IOError: [Errno 2] No such file or directory: '~/.boto'

这是代码:

file = open("~/.boto") 
file.write("test")
file.close()

最佳答案

您需要使用 os.path.expanduser 并使用 w 打开写入:

import  os

# with will automatically close your file
with open(os.path.expanduser("~/.boto"),"w") as f:
f.write("test") # write to file

os.path.expanduser(路径)

On Unix and Windows, return the argument with an initial component of ~ or ~user replaced by that user‘s home directory.

On Unix, an initial ~ is replaced by the environment variable HOME if it is set; otherwise the current user’s home directory is looked up in the password directory through the built-in module pwd. An initial ~user is looked up directly in the password directory.

On Windows, HOME and USERPROFILE will be used if set, otherwise a combination of HOMEPATH and HOMEDRIVE will be used. An initial ~user is handled by stripping the last directory component from the created user path derived above.

If the expansion fails or if the path does not begin with a tilde, the path is returned unchanged.

In [17]: open("~/foo.py")
---------------------------------------------------------------------------
IOError Traceback (most recent call last)
<ipython-input-17-e9eb7789ac68> in <module>()
----> 1 open("~/foo.py")

IOError: [Errno 2] No such file or directory: '~/foo.py'

In [18]: open(os.path.expanduser("~/foo.py"))
Out[18]: <open file '/home/padraic/foo.py', mode 'r' at 0x7f452d16e4b0>

默认情况下一个文件只为读打开,如果你想打开写你需要使用w,f你想打开为读写使用r+ 或追加使用 a

如果文件中有内容,则 w覆盖,如果您尝试添加到文件中,则使用 a

关于python - IO错误 : [Errno 2] No such file or directory writing in a file in home directory,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30151355/

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