from sys import argv
script, first, second, third = argv
print "The script is called:",script
print "Your first variable is:",first
print "Your second variable is:",second
print "Your third variable is:",third
这一节主要是解包?
argv 是参数变量(argument variable),这个变量保存着运行Python脚本时传递给Python脚本的参数。
第三行把 argv 给解包(unpack)了,我在 PowerShell 中输入
python ex13.py first 2nd 3rd
那么
第一个 script 就是ex13.py
第二个 first 就是 first
第三个 second 就是 2nd
第四个 third 就是 3rd
需要明白的是,在以前我们输入的
python ex13.py
这里的 ex13.py 也是参数
实际上我们输入了 四个参数 ex13.py...3rd 这四个参数都存入了 argv 中
结果就是这样的
如果我们少输入一个参数,比如
python ex13.py first 2nd
则会提示错误
“need more than 3 values to unpack”
====================================================================
如果我们多输入一个参数呢?比如
python ex13.py first 2nd 3rd 4th
实验证明会提示 “参数过多”
====================================================================
附加练习
3.把 raw_input 和 argv 一起用
from sys import argv
script, first, second, third = argv
print "Input fourth variable:"
fourth = raw_input
print "The script is called:",script
print "Your first variable is:",first
print "Your second variable is:",second
print "Your third variable is:",third
print "Your fourth variable is:",fourth
效果不错!