python 3.4 windows 8.1 无法在 C:\ 创建文件
我正在尝试在python3.4和Windows 8上运行一个脚本。
在Windows 7上运行得很好,但现在在Windows 8.1上,它无法在C盘写文件,可能是因为权限被拒绝。如果我换个目录,比如User/xxx,就可以写,但我不知道怎么才能在C盘写文件。
with open('C:/xxxx.csv', 'r') as csvfile:
Traceback (most recent call last):
File "C:\Python34\Scripts_jmab\csv_to_shp.py", line 12, in <module>
urllib.request.urlretrieve(a,filename)
File "C:\Python34\lib\urllib\request.py", line 188, in urlretrieve
tfp = open(filename, 'wb')
OSError: [Errno 22] Invalid argument: 'C:/xxxxx.csv'
谢谢
1 个回答
0
因为Windows的安全设置,用户不能在根目录C:\
文件夹里创建文件,因为那里有一些重要的系统文件,可能会被病毒攻击。虽然可以关闭这个功能,但最简单(也是最安全)的办法是为你的程序创建一个文件夹,专门用来存放输出文件。C:\TEMP
是个不错的地方(如果这个文件夹还不存在,你可以自己创建一个),或者你也可以根据自己的喜好命名一个其他的文件夹。