我在文件的顶部有#!/usr/bin/env python
。所以当我运行文件时它应该工作?但事实并非如此。当我使用
#!/usr/bin/env python
import pygtk
pygtk.require('2.0')
import gtk
class App1:
def __init__(self):
self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
self.window.show()
def main(self):
gtk.main()
if __name__ == "__main__":
app = App1()
app.main()
Python发生了这样的事情:
jiewmeng@jiewmeng:/labs/projects/learnPython$ app1.py
app1.py: command not found
jiewmeng@jiewmeng:/labs/projects/learnPython$ ./app1.py
bash: ./app1.py: Permission denied
jiewmeng@jiewmeng:/labs/projects/learnPython$ ll
total 12
drwxr-xr-x 2 jiewmeng jiewmeng 4096 2011-07-16 22:08 ./
drwxr-xr-x 4 jiewmeng jiewmeng 4096 2011-07-16 21:45 ../
-rwxrwxr-x 1 jiewmeng jiewmeng 256 2011-07-16 22:05 app1.py*
似乎最有可能的问题是/usr/bin/env不可由您执行。尝试
sudo chmod 755 /usr/bin/env
。显然,这不是正常状态,因此必须有人手动创建了/usr/bin/env上的权限。基本的python代码发生了什么事情,比如:
也许问题出在GTK或其他方面,而不是
#!/usr/bin/env python
?Chris在对问题的评论中提出了一个很好的建议,而Peter的回答涵盖了如果Chris的建议不起作用,并且您位于系统上的sudoer组(即,如果您可以修改不属于您的用户的文件)时,您应该做什么。接下来可能是你的下一个选择。
在命令shell中,键入:
这个命令将告诉您python的工作安装位置。然后可以相应地修改python文件中的shebang行。例如,在我的系统上:
因此,我的谢邦会:
请注意,这将使您的文件在您的系统上工作,但它很可能会使它无法在其他系统上运行。。。
相关问题 更多 >
编程相关推荐