Python不在OS X终端中执行脚本

时间:2015-03-06 14:20:58

标签: python

我不知道为什么但我不能通过终端运行python脚本。

我的剧本:

define_regions.py

print "Hello World!"
print "Hello Again"
print "I like typing this."
print "This is fun."
print 'Yay! Printing.'
print "I'd much rather you 'not'."
print 'I "said" do not touch this.'

终端:

pik:scripts katja$ python define_regions.py
pik:scripts katja$

它不会以某种方式执行它,我不明白为什么。

提前谢谢。

编辑:

pik:scripts katja$ python
Python 2.7.6 (default, Sep  9 2014, 15:04:36) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.39)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> 

python -V
Python 2.7.6

pik:scripts katja$ which python
/usr/local/bin/python

pik:scripts katja$ python -c "print 'hello' "
hello

EDIT2: 对脚本的修改既不起作用

#!/usr/local/bin/python    
print "Hello World!"

2 个答案:

答案 0 :(得分:0)

你试过打开python终端(只是为了检查python是否正在运行?):输入python并输入

你在脚本所在的文件夹中吗?

(执行list(ls)命令检查你是否看到了脚本文件,其他人使用cd将dir更改为脚本的位置)

有时你需要在你运行的脚本之前加点(在linux中,但os x非常类似)所以python ./define_regions.py

你可以说:

#!/usr/bin/python

在您的文件顶部?

你是如何创建文件的?不太了解os x编辑器....但你需要使用最简单的编辑器...以避免文件中的所有非ascii字符(如行结束......)。

答案 1 :(得分:-1)

Add shebang line in the beginning your python script

#!/usr/bin/env python 

make your python script executable使用shell中的chmod。

chmod +x define_regions.py

然后你将能够像你想要的那样执行你的python脚本。

添加shebang意味着人们可以根据需要直接调用脚本(假设它被标记为可执行文件);省略它只是意味着必须手动调用python。

运行程序的最终结果不受任何影响;它只是手段的选择。