在python中怎样获取命令行的原始参数

Python033

在python中怎样获取命令行的原始参数,第1张

数1: sys.argv[1]

参数2: sys.argv[2]

test.py

1import sys

2print "脚本名:", sys.argv[0]

3for i in range(1, len(sys.argv)):

4print "参数", i, sys.argv[i]

>>>python test.py hello world

脚本名:test.py

参数 1 hello

参数 2 world

python中使用命令行选项:

例如我们需要一个convert.py脚本。它的作用是处理一个文件,并将处理后的结果输出到另一个文件中。

要求该脚本满足以下条件:

1.通过-i -o选项来区别参数是输入文件还是输出文件.

>>>python convert.py -i inputfile -o outputfile

2.当不知道convert.py需要哪些参数时,用-h打印出帮助信息

>>>python convert.py -h

getopt函数原形:

getopt.getopt(args, options[, long_options])

import sys

def spfile(infile,linesize=1000):

sp_file = open(infile,'r')

flag = True

i = 1

c = 0

while flag:

if i <= linesize:

line = sp_file.readline()

out_file='outfile_' + str(c) + '.txt'

open(out_file,'a').write(line)

i+=1

elif len(line)==0:

flag=False

else:

i=1

c+=1

continue

if __name__ == '__main__':

spfile(sys.argv[0], int(sys.argv[1]))

类实例化时,会调用类的__init__(self)方法,__init__方法定义了几个参数,就传几个,没有定义__init__方法就调用默认的(根类object的)

比如:

class A:pass #实例化时调用默认__init__

class B: 

    def __init__(self,a,b="b"):

        self.a=a

        self.b=b

a = A()

b1 = B("a")

b2 = B("a","c")