尝试在python中保存文件:
g = open('~/ccna_pages/'+filename, 'w')
g.write(page)
g.close()
收到此错误:
回溯(最近一次调用最后一次):文件“dl-pages.py”,第50行,in g = open('〜/ ccna_pages /'+ filename,'w')IOError:[Errno 2]没有这样的文件或目录:'〜/ ccna_pages / 1.0.1.1.html'
但是,该目录确实存在于该位置。
这种语法似乎是python文档推荐的内容.. http://docs.python.org/release/1.5/tut/node46.html
我错过了什么?感谢..
答案 0 :(得分:6)
Python不会为您扩展~
,您需要手动完成。
示例:
>>> with open('~/test', 'w') as f:
... pass
...
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IOError: [Errno 2] No such file or directory: '~/test'
>>> with open('/home/mihai/test', 'w') as f:
... pass
...
答案 1 :(得分:2)
os.path
模块充满了好处,包括expanduser
:
import os
filename = 'whatever.txt'
dir = '~/ccna_pages/'
if dir.startswith('~'):
dir = os.path.expanduser(dir)
path = os.path.join(dir, filename)
print(path) # /home/some1/ccna_pages/whatever.txt