我想知道如何在从cmd提示符打开时从python脚本中输入变量?我知道使用c会做类似的事情:
int main( int argc, char **argv ) {
int input1 = argv[ 0 ]
int input2 = argv[ 1 ]
.....
}
如何在python中实现同样的结果?
答案 0 :(得分:8)
import sys
def main():
input1 = sys.argv[1]
input2 = sys.argv[2]
...
if __name__ == "__main__":
main()
答案 1 :(得分:5)
Command Line Arguments In Python用于严格的命令行参数处理。
使用sys.argv进行简单访问:
http://www.faqs.org/docs/diveintopython/kgp_commandline.html
答案 2 :(得分:2)
参数位于sys.argv,第一个sys.argv[0]
是脚本名称。
对于更复杂的参数解析,您应该使用argparse(对于python> = 2.7)。以前的模块是getopts和optparse。
答案 3 :(得分:1)
有两种选择。
sys.argv
并使用它。getopts
另请参阅:Dive into Python和PMotW
答案 4 :(得分:1)
答案 5 :(得分:0)
确定选项特定变量
也很有用''' \
USAGE: python script.py -i1 input1 -i2 input2
-i1 input1 : input1 variable
-i2 input2 : input2 variable
'''
import sys
...
in_arr = sys.argv
if '-i1' not in in_arr or '-i2' not in in_arr:
print (__doc__)
raise NameError('error: input options are not provided')
else:
inpu1 = in_arr[in_arr.index('-i1') + 1]
inpu2 = in_arr[in_arr.index('-i2') + 1]
...
# python script.py -i1 Input1 -i2 Input2