argv

argv:

首先看一个例子:

#!/usr/bin/env python  
import sys  
  
def main(argv):  
    print argv[0]             
    print argv[1]  
    print argv[1:]  
    print argv[1][1:]  
  
    print sys.argv[0]         #脚本名字  
    print sys.argv[1]         #脚本第一个参数  
    print sys.argv[1:]  
  
    print sys.argv            #脚本的所有参数  
    print len(sys.argv)       #脚本的参数个数  
     
    return 0  
  
if __name__ == '__main__':  
    sys.exit(main(sys.argv[1:]))  #sys.exit(0)正常退出, sys.exit(1)非正常退出 

./test.py aa bb cc

输出结果为:

aa  
bb  
['bb', 'cc']  
b  
./test.py  
aa  
['aa', 'bb', 'cc']  
['./test.py', 'aa', 'bb', 'cc']  
4 
从上面输出结果可以看出,sys.argv[0]是当前所执行的脚本,index 1以后的才是所传入的参数。用sys.argv[1:]可以获取到所有的参数,并且输出到一个列表里面。



### Python 中 `sys.argv` 的用法及示例 在 Python 中,`sys.argv` 是一个列表,用于接收从命令行传递给脚本的参数。它包含所有命令行参数,其中第一个元素 `sys.argv[0]` 通常是脚本本身的名称[^1]。可以通过索引访问其他参数,例如 `sys.argv[1]` 表示第一个用户输入的参数。 以下是一个简单的示例,展示如何使用 `sys.argv` 打印所有参数及其数量: ```python from __future__ import print_function import sys print("脚本名:", sys.argv[0]) # 输出脚本名 print("参数列表:", sys.argv[1:]) # 输出除脚本名外的所有参数 print("参数数量:", len(sys.argv) - 1) # 计算用户输入的参数数量 ``` 运行上述脚本时,可以传递多个参数以查看效果。例如: ```bash $ python script.py arg1 arg2 arg3 ``` 输出结果可能如下所示: ``` 脚本名: script.py 参数列表: ['arg1', 'arg2', 'arg3'] 参数数量: 3 ``` 此外,还可以通过切片操作灵活地处理参数。例如: ```python import sys print("每隔一个参数:", sys.argv[1::2]) # 每隔一个参数输出 print("最后一个参数:", sys.argv[-1]) # 输出最后一个参数 print("反转参数列表:", sys.argv[::-1]) # 反转参数列表 ``` 假设运行以下命令: ```bash $ python script.py a b c d e f ``` 输出结果为: ``` 每隔一个参数: ['a', 'c', 'e'] 最后一个参数: f 反转参数列表: ['f', 'e', 'd', 'c', 'b', 'a', 'script.py'] ``` ### 注意事项 - 如果未传递任何参数,则 `sys.argv[1:]` 将返回一个空列表。 - 在某些操作系统中,脚本名可能为空字符串或不包含完整路径[^3]。 - 对于复杂的命令行参数解析需求,推荐使用 `argparse` 模块[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值