博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
sys.argv的意义及用法
阅读量:6080 次
发布时间:2019-06-20

本文共 1067 字,大约阅读时间需要 3 分钟。

sys.argv的意义

简单来说,sys.argv是一个参数列表,这个列表存放着从外界获取到的参数(可能有多个)

下面以一个例子来详细阐述sys.argv,本次演示在ubuntu环境下运行

新建一个test.py,写入以下代码

test.py

import syslst = sys.argvprint(lst)

在命令行使用python解释器运行test.py

python3 test.py    # 注意此命令要在test.py所在的目录下运行

运行结果

['test.py']

可以看到sys.argv里面只有一个元素,是当前文件的文件名

下面我们在运行test.py时传入一个参数,观察sys.argv的变化

python3 test.py 2

运行结果

['test.py', '2']

传入多个参数时

python3 test.py 2 "hello"    # 注意参数是以空格分割

运行结果

['test.py', '2', 'hello']

改变当前工作目录,切换到上级目录tmp

cd ..

再次运行test.py

python3 tmp/test.py 2 "hello" "world"

运行结果

['tmp/test.py', '2', 'hello', 'world']

可以看到sys.argv的第一个元素是执行的py文件相对于当前工作目录的路径

sys.argv的使用

工作中我们可能会遇到这样一种情况,需要在命令行执行py文件,同时也需要传入参数,这时候sys.argv就派上用场了,sys.argv维护着一个参数列表,从外界传入的参数都记录在这个列表里,从而就可以在py文件里使用这些参数

修改test.py文件

test.py

import syslst = sys.argvprint(lst)def func():    a = int(sys.argv[1])    b = int(sys.argv[2])    return a**bprint("result of func:",func())

运行结果

['test.py', '2', '3']result of func: 8

小结

简而言之,sys.argv是一个参数列表,第一个元素是执行的py文件相对于当前工作目录的路径,后面的元素都是外界传入的参数,在py文件里可以使用sys.argv[index]的方式获取这些参数

转载于:https://www.cnblogs.com/zzliu/p/10775049.html

你可能感兴趣的文章
Linux 如何写makefile文件
查看>>
android 虚拟机中sd卡应用
查看>>
eclipse 快速建立PHP调试环境
查看>>
数据结构与算法-列表、栈、队列
查看>>
nodejs的安装和环境搭建
查看>>
HTML5 Canvas 学习日志(七)
查看>>
如何把Windows,Linux和macOS的动态链接库封装到一个Java Jar包中
查看>>
JVM内存模型和JVM参数的关系
查看>>
iOS按钮倒计时在进入后台不继续计时的处理
查看>>
logback 配置详解(一)
查看>>
Java8新特性:函数式编程
查看>>
【语法拾零】方法内部类所访问的局部变量为什么必须是final的?
查看>>
Android studio使用心得(二)--- 打包签名apk发布
查看>>
vi 编辑器的用法
查看>>
Android开发学习笔记(五):Starting an Activity
查看>>
xcode cocos2sx make
查看>>
SQL SERVER数据库服务器排序规则修改
查看>>
/etc/profile和/etc/profile.d/的区别
查看>>
POI支持的颜色对比
查看>>
linux内核编译(fedora16_x86_64)
查看>>