脚本只能在Powershell中运行

时间:2013-08-16 22:47:16

标签: python powershell ide pycharm

首先,我查看了文档,发现了这个:    http://www.tutorialspoint.com/python/python_command_line_arguments.htm

然后我也发现了这个:    how to execute a python script file with an argument from inside another python script file

我正在使用pycharm 2.7.3,当我尝试运行我的脚本时,我得到并且错误(错误与pycharm无关)。我发现这个错误唯一的办法就是通过Windows PowerShell运行脚本并带有几个“参数”(这就是它的名字吗?)

以下代码构成了我的脚本temp.py

from sys import argv
# this what the Ide fails to run

scripts, first, second, third = argv
print "The script is called:", scripts
print "Your first variable is:", first
print "Your second variable is:", second
print "Your third variable is:", third

接下来是我在powershell中输入的内容    注意:上面的代码是temp.py

python temp.py first 2nd 3rd

1)在“python temp.py”之后出现的那些文本片段是什么,是参数吗?

2)是否可以在IDE中使用所谓的参数运行代码(我正在使用pyCharm)

3)如果'2)'=真,那怎么回事?

1 个答案:

答案 0 :(得分:1)

  

1)在“python temp.py”之后出现的那些文本片段是什么,是参数吗?

是的,在shell上temp.py之后传递的内容称为“参数”或“命令行参数”。有时它们被称为“参数”,有时将“实际”作为前缀。*

请注意temp.py及其所有参数本身都是python的参数。

您专门使用的sys.argv变量为您提供:

  

传递给Python脚本的命令行参数列表......


  

2)是否可以在IDE中使用所谓的参数运行代码(我正在使用pyCharm)

是。几乎每个IDE都有办法做到这一点。


  

3)如果'2)'=真,那怎么回事?

阅读PyCharm文档以获取详细信息,但是IIRC,它们是"run/debug configuration"的一部分;当您使用“编辑配置”命令并编辑一个时,会有一个标有“脚本参数”的框供您输入参数。


*使用“参数”有点误导。从技术上讲,使用Python用于函数调用的术语,您应该说您的脚本有一个参数,一个可变位置参数,它收集用于调用它的所有参数,您可以访问sys.argv。但正如你猜测的那样,没有人真正说过这样的话。如果有人说“命令行参数”或“脚本参数”,则表示“sys.argv中的内容”。