2013-11-03 39 views
0

文件试图保存Python文件:无法保存在python

g = open('~/ccna_pages/'+filename, 'w') 
g.write(page) 
g.close() 

得到这个错误:

Traceback (most recent call last): File "dl-pages.py", line 50, in g = open('~/ccna_pages/'+filename, 'w') IOError: [Errno 2] No such file or directory: '~/ccna_pages/1.0.1.1.html'

但是,目录不会在该位置存在。

此语法似乎是什么Python文档建议.. http://docs.python.org/release/1.5/tut/node46.html

我缺少什么?谢谢..

+0

作为调试方法,尽量只写一个文件没有文件路径,只是一个名称,以确保那不是问题 –

+8

你可能不想阅读Python 1.5文档。 – geoffspear

回答

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 
... 
+2

为什么downvote?请告诉我我错在哪里 –

+2

从我那里得到+1。 -1可能是从考虑问题太小的人来回答,它会发生 – alko

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