Windows 7文件权限问题与Python

时间:2012-03-25 20:53:13

标签: python

所以我目前正在使用朋友写的python程序,以便一次快速运行数百个文件。我收到某种文件权限错误。我已经将UAC降低到最低,除此之外我还不确定它可能是什么,因为我已经尝试了多个目录。

以下是代码:

import os 
import fnmatch
import subprocess

matches = []
outputs = []
foutputs = []
for root, dirs, files in os.walk("C:\\Users\\Freeman\\Desktop"):
    for files in fnmatch.filter(files, '*.c'):
        matches.append(os.path.join(root,files))
        outputs.append(os.path.join(root,"a.exe"))
        foutputs.append(os.path.join(root,"out.txt"))

for n,m,l in zip(matches, outputs, foutputs):
    print n

    # Compile
    cmd = ['gcc', '-O2', n, '-o', m]
    p = subprocess.call(cmd, shell=True)
    fin = file("C:\\Users\\Freeman\\Desktop")

    # Set up append mode for output
    if os.path.exists(l):
        os.remove(l)

    fout = file(l,"a")
    if os.path.exists(m):
        # Test multiple cases
        p = subprocess.Popen(m, shell=False, stdin=subprocess.PIPE, stdout=subprocess.PIPE)
        fout.write(repr(p.communicate(fin.readline())))

这是我收到的错误:

C:\Users\Freeman\Desktop\Assignment 3\Assignment 3- Abdulrahman Ruaa  - 13015067923101\assigh 3.c

^^这是应该运行的第一个用户代码

Traceback (most recent call last):
    File "C:\Users\Freeman\Desktop\Assignment 3\test.py", line 20, in <module>
        fin = file("C:\\Users\\Freeman\\Desktop")
IOError: [Errno 13] Permission denied: 'C:\\Users\\Freeman\\Desktop'

^^这就是目录问题,我已经尝试了不同的目录,但无济于事。

感谢您的考虑。

此致

迈克尔

1 个答案:

答案 0 :(得分:1)

问题在于尝试使用file built-in打开目录

你做不到。

您似乎在代码中遇到语义错误,因为您尝试从用户的Desktop目录逐行读取。