通过Notepad ++运行权限错误

时间:2013-08-18 19:48:41

标签: python permissions

我有一个Python 2.7程序,最后将一组数据打印到文本文件中。如果我将文件导入Pythonshell,该程序可以正常工作,但如果我尝试使用Crl + R(也使用Pythonshell)直接从Notepad ++运行脚本,我会收到错误:

Traceback (most recent call last):
  File "C:\Python27\ZeemanLab.py", line 140, in <module>
    with open("Mercury{}at{}A".format(wavelength, B), "w") as f:
IOError: [Errno 13] Permission denied: 'Mercury55at55A'

问题在于:

with open("Mercury{}at{}A".format(wavelength, B), "w") as f: 
    f.write('A {}nm lamp in a {}A Magnetic field \n'.format(wavelength, B))

我对这会产生什么影响毫无头绪。

2 个答案:

答案 0 :(得分:0)

添加和打印os.getcwd()的结果可能有助于您排除故障。也许Notepad ++从不同的工作目录运行脚本?您是否尝试过使用C:\temp\Mercury{}at{}A等绝对路径名?

答案 1 :(得分:0)

您需要更改文件的权限,或将其移动到具有适当权限的目录。 在Windows 7英语下,这样做的方法是:

  1. 左键单击文件

  2. 点击属性

  3. 按安全

  4. 在“群组或用户名:”中,选择您的用户并点击修改。

  5. 将permerssion设置为读写。

  6. 如果不能,则可能需要更改为Adminster用户。然而,最简单的解决方案就是移动项目的文件夹,并在文档,桌面或其他文件夹中运行它。