如何让Python程序接收来自UNIX终端的标准输入的参数作为输入?

如何让Python程序接收来自UNIX终端的标准输入的参数作为输入?,python,Python,例如,我想做一些像 python DoublePendulum.py INPUT1 INPUT2 (其中,INPUT1和INPUT2在双摆锤程序中作为变量输入) 在test.py中 import sys print 'Number of arguments:', len(sys.argv), 'arguments.' print 'Argument List:', str(sys.argv) 输出 Number of arguments: 4 arguments. Argument Lis

例如,我想做一些像

python DoublePendulum.py INPUT1 INPUT2
(其中,
INPUT1
INPUT2
在双摆锤程序中作为变量输入)

在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还提供了帮助您解析命令行选项和参数的模块。 标准库中有以下模块:

  • 该模块类似于GNU getopt
  • 该模块提供面向对象的命令行选项解析,optparse在Python的2.7版中被弃用,取而代之的是
在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还提供了帮助您解析命令行选项和参数的模块。 标准库中有以下模块:

  • 该模块类似于GNU getopt
  • 该模块提供面向对象的命令行选项解析,optparse在Python的2.7版中被弃用,取而代之的是

$python test.py一二五岁左右

内部测试.py

import sys
print(sys.argv[0:1], sys.argv[1:2], sys.argv[2:3], sys.argv[3:4], sys.argv[4:5])  
将作为列表输出:

将输出:作为字符串

我为返回所需参数的函数创建了此函数

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)
def give_me_arg(n):
num=len(sys.argv)
如果n>=num:

打印(“仅输入:>”,num,”
$python test.py一二五岁左右

内部测试.py

import sys
print(sys.argv[0:1], sys.argv[1:2], sys.argv[2:3], sys.argv[3:4], sys.argv[4:5])  
将作为列表输出:

将输出:作为字符串

我为返回所需参数的函数创建了此函数

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)
def give_me_arg(n):
num=len(sys.argv)
如果n>=num:

打印(“仅输入:>”,num,'check out
sys.argv
我个人是它的粉丝,因为它允许切换/验证/etc。check out
sys.argv
我个人是它的粉丝,因为它允许切换/验证/etc。
optparse
从2.7开始被弃用。改为使用
argparse
optparse
从2.7开始被弃用。使用
argparse
I恩斯特德。