python从命令行读取参数

sys.argv[1]代表从命令行读取第一个参数,sys.argv[2]代表从命令行读取第二个参数,往后以此类推

注意sys.argv[n]读取的是str类型,所以用数字的话还需进行类型转换!!!

在类中函数的第一个形参self必须要加!!!

代码如下:

import sys,random

class Person:
    sex='男'#属性可直接定义
    def __init__(self,name,age): #构造函数
        self.name=name
        self.age=age
        
    def say_hi(self): #self参数一定要加!!!
        print('hello,I\'m',self.name)
        
    def fun(self,n,m):
        print('m=',m)
        for i in range(n):
            #randrange() 方法返回指定递增基数集合中的一个随机数,基数默认值为1。
            #前闭后开
            print(random.randrange(100))
        return


if __name__=='__main__':
    p=Person('函宝宝',22)#定义对象初始化
    p.say_hi()
    print(p.sex)
    n=int(sys.argv[1])#从命令行读取一个参数赋给n,是str类型所以需要转换成int型
    m=int(sys.argv[2])
    p.fun(n,m)
    

运行结果:

格式: python 文件 参数1[ 参数2 参数3 ... 参数n]

切换到文件所在目录下执行

或者是直接给一个绝对路径(效果一样)

若报错如下是路径的问题,注意切换到文件所在的目录!

 

发布了81 篇原创文章 · 获赞 91 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/weixin_44593822/article/details/103392262