python - open()不使用路径名

时间:2011-05-21 00:15:17

标签: python

Python 2.7.1,使用open(),并且无法使用追加模式和路径名而不是文件名。

它表示open()作为stdio fopen()工作,当放入append(“a”)时该func表示如果文件不存在则应该创建该文件。

# this works in python, creating file.txt if it doesnt exist
>>> fp = open ("file.txt", "a")

# this fails to create, but works if the file is already extant
>>> fp = open ("~/file.txt", "a")
IOError: [Errno 2] No such file or directory: '~/file.txt'

问题是路径名,而不是文件名。我做错了什么?

编辑:Linux

1 个答案:

答案 0 :(得分:11)

结帐os.path.expanduser()

  

os.path.expanduser(路径

     

在Unix和Windows上,返回带有初始组件的参数   〜或〜用户替换的用户   主目录。

很多事情都不喜欢路径中的~,这会解决它。