0

例如 - 我想做类似...

python DoublePendulum.py INPUT1 INPUT2

(其中INPUT1INPUT2被视为 DoublePendulum 程序中的变量输入)。

4

2 回答 2

5
$ python test.py arg1 arg2 arg3

在 test.py 中

import sys

print 'Number of arguments:', len(sys.argv), 'arguments.'
print 'Argument List:', str(sys.argv)

输出

Number of arguments: 4 arguments.
Argument List: ['test.py', 'arg1', 'arg2', 'arg3']

Python 还提供了帮助您解析命令行选项和参数的模块。标准库中有以下模块:

  • getopt模块类似于 GNU getopt 。
  • optparse模块提供面向对象的命令行选项解析,optparse 在 Python 2.7 版本中被弃用,argparse替代品。
于 2012-12-11T03:51:56.600 回答
1

$ python test.py one two five something

在 test.py 里面

import sys
print(sys.argv[0:1], sys.argv[1:2], sys.argv[2:3], sys.argv[3:4], sys.argv[4:5])  

将输出为列表:

['test.py'] ['one'] ['two'] ['five'] ['something']
for my_var in sys.argv:
    print(my_var)

将输出:作为字符串

test.py  
one  
two  
five  
something

我做了这个函数来返回你想要的参数

def give_me_arg(n):
    num = len(sys.argv)
    if n >= num:
        print("Only enter:>",num,'<-and are this from 0 to ',num-1,':', sys.argv)
        return ''
    else:
        for my_var in sys.argv[n:n+1]:
            return my_var

my_var=give_me_arg(3)
于 2017-03-23T19:53:40.733 回答