‘壹’ python3中sys.argv[1]具体怎么用我的目的是想用这个参数导入各种不知名文件
可以把它当成变量用衡斗
如咐迟磨在test.py文件中
def test():
import sys
argv1 = sys.argv[1]
print(argv1)
在命令行旦肆中
python test.py abc
结果是
abc
‘贰’ python sys.argv[1]没有值
#!/usr/bin/python
import sys
i=1
if __name__ == '__main__':
if len(sys.argv) < 2 :
print "please usage %s string "档物绝%(sys.argv[0])
sys.exit()
print 'ligen----'行姿蚂慎
while (i < len(sys.argv) ) :
print sys.argv[i]
i=i+1
print 'ligen----'
‘叁’ 在python中sys.argv[1:]是什么
sys.argv[]说白了就是一个从程序外部获取参数的桥梁,这个“外部”很关键,因为我们从外部取得的参数可以是多个州伍,所以获得的是一个列表(list),也就是说sys.argv其实可以看作是一个列表,所以才能用[]提取其中的元素。其第一个元素是程序本身,随后才依次是外部给予的参数。
‘肆’ 在python中sys.argv[1:]是什么
我的问题是:为何[]里会有”:“冒号?sys.argv[1:]又代表什么?核绝
这就是个分片操作
简单例子
l = [1,2,3,4,5]
l[1:],意思就是取列表l第一个元素后的值,也就是[2,3,4,5]
l[2:], -----------------[3,4,5]
还可以倒序来取
l[:-1],-----------------从右到左,取最后一个元素前面的值,[1,2,3,4]
l[:-2],-----------------[1,2,3]
而你问的sys.argv[1:],这个是你main(xxx)方法的参数渗液,那么这个参数从哪里来
从这里来,比如
python test.py --t help --v
那么sys.argv就是['test.py', '--t', 'help', '--v']
那么sys.argv[1:]就是['--t', 'help', '--v']
分片是个很强大,很方便的功能,具体的你自己查丛氏物查资料
‘伍’ python中sys.argv[1]错误:IndexError: list index out of range
你旁渣没有理解这个argv是什么。
比如打印hello world程序
再来看这次的运行方式,py文件后面多了一个参数 “keep coding”
回到你的程序,程序本身没有问题,而是你运行py程序的时候,虚正没有携带参数,就和上面说的keep coding”一样,所以sys.argv[1]是不存在的,因此报错“索引越界了”。
‘陆’ python sys.argv[1]运行报错问题
运行的时候要带氏塌参数啊。乱核纤
sys.argv[1]是第一哗仿个参数
你试试运行:E:\sysargv.py 1,就可以了啊
‘柒’ Python初学者问下sys.argv[]
sys.argv 表示命令行参数,这个判断,是岁燃判断启动时是不是提供了4个参数,并进行相应处理,比如执好段行下面2行,分别是1个参数和2个参数:python hello.py "111"python hello.py "乎袜虚111" "222"
‘捌’ python中的sys.argv有什么用print sys.argv什么意思
就是调用fib函数
#可以分开表示成:
n=int(sys.argv[1])
#[python fibo.py 1]这么执行
#sys.argv里面存放的是命令行参数,argv[0]是脚本名(fibo.py),argv[1]里是第一个参数(1),因为获取的是字符串,所以int转为整形
fib(n)如果解决了您的问题请采纳!
如果未解决请继续追问
‘玖’ python3.4中fib(int(sys.argv[1]))是什么意思如图
就是调用fib函数
#可以分开表示成:
n=int(sys.argv[1])
#[pythonfibo.py1]这么执行
#sys.argv里面存放的是命令行参数,argv[0]是脚本名(fibo.py),argv[1]里是第一个参数(1),因为获取的是字符串,所以int转为整形
fib(n)
如果解决老世了您仔含芦的问题请念带采纳!
如果未解决请继续追问
‘拾’ python关于sys.argv的使用
1.sys.argv是用来存放系统的参数,包括脚本名本身。
2.你这么直接使用sys.argv[1]和sys.argv[2],是很不好的做法。
3. 正常,且推荐的用法是,使用对应的库函数,帮你解析对应函数参数。
详细解释可参考我的:
【整理】Python中如何获得并处理命令行参数
里面有示例代码。
4.看了上面的帖子,还要你去看:
【整理】【多图详解】如何在Windows下开发Python:在cmd下运行Python脚本,如何使用Python Shell(command line模式和GUI模式),如何使用Python IDE
然后就懂了,对于你这里,执行脚本时需要输入参数的。
5。由于你这里用wing ide没有输入参数,所以才会出现
list index out of range
的错误的。
上面帖子都看完,就自然懂了。
(此处不给贴地址,请自己用google搜标题,就可以找到地址了)