Python学习笔记--认识sys.argv

sys.argv 是 Python 的一个内置模块 sys 中的一个属性。它是一个列表,包含了从命令行传递给脚本的参数。

例如,如果你有一个名为 script.py 的脚本,并且你从终端窗口命令行这样运行它:

>>>python script.py arg1 arg2 arg3

那么在 script.py 中,sys.argv 的值将会是:['script.py', 'arg1', 'arg2', 'arg3']

sys.argv[0] 通常是脚本的名称(路径,如果它不是位于当前目录下的话)。其余的元素则是按顺序从命令行传递给脚本的参数。如下:

  • sys.argv[0] 的值是 'script.py'
  • sys.argv[1] 的值是 'arg1'
  • sys.argv[2] 的值是 'arg2'
  • sys.argv[3] 的值是 'arg3'

可以使用这些参数来定制你的脚本的行为。例如,你可以检查 sys.argv[1] 来决定执行哪种操作或处理哪种数据。script.py文件如下,在窗口中执行:

import sys

def run():
    # 如果运行脚本没有参数,提醒、退出
    if len(sys.argv) == 1:
        print(f'运行代码{sys.argv[0]},缺少参数。')
        print(f'终端执行python程序文件用法: python {sys.argv[0]} {{参数名字(可以多个,空格间隔)}}')
        sys.exit()
    # 打印脚本执行的参数
    print(f"程序文件名:{sys.argv[0]} ")
    for index,value in enumerate(sys.argv):
        print(f"----sys.argv[{index}] : {value}")


if __name__ == '__main__':
    run()

(py312) liuyf@liuyf-PC:~/LyfPyLearning$ python script.py
运行代码script.py,缺少参数。
终端执行python程序文件用法: python script.py {参数名字(可以多个,空格间隔)}


(py312) liuyf@liuyf-PC:~/LyfPyLearning$ python script.py  'liuzx'  'liuyf'  '恭喜发财'
程序文件名:script.py
----sys.argv[0] : script.py
----sys.argv[1] : liuzx
----sys.argv[2] : liuyf
----sys.argv[3] : 恭喜发财
(py312) liuyf@liuyf-PC:~/LyfPyLearning$

你可能感兴趣的:(学习,笔记,python)