python的argv是什么意思_argv和raw_input()有什么区别?

argv和raw_input()有什么区别?它们的区别在于要求用户输入的位置不同。如果你想让用户在命令行输入你的参数,你应该使用argv .,如果你希望用户在脚本执行的过程中输入参数,那就就要用到raw_input()。下面我们写一个可以接收参数的脚本,来具体认识一下argv和raw_input()。

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

第一行代码中,我们用到一个 import语句,这是将Python的功能模块加入你自己脚本的方法。Python不会一下子将它所有的功能提供给你,而是让你需要什么就调用什么。这样可以让你的程序更加精简,而后面的程序员看到你的代码的时候,这些“import”语句可以作为提示,让他们明白你的代码用到了哪些功能。

argv就是所谓的“参数变量”,它是一个非常标准的编程术语。在其他的编程语言里你也可以看到它。这个变量包含了你传递给 Python的参数。

代码的第3行将 argv进行“解包(unpack)”,与其将所有参数放到同一个变量下面,我们将每个参数赋予一个变量名: script, first, second,以及 third。这也许看上去有些奇怪,不过”解包”可能是最好的描述方式了。它的含义很简单:“把argv中的东西解包,将所有的参数依次赋予左边的变量名”。

前面使用import让程序实现更多的功能,我们把import称为功能,它们的真正名称其实是模块。像下面的示例一样将你的脚本运行起来:

$ python ex13.py first 2nd 3rd

The script is called: ex13.py

Your first variable is: first

Your second variable is: 2nd

Your third variable is: 3rd

如果你每次输入的参数不一样,那你看到的输出结果也会略有不同:

$ python ex13.py stuff things that

The script is called: ex13.py

Your first variable is: stuff

Your second variable is: things

Your third variable is: that

$$

python ex13.py apple orange grapefruit

The script is called: ex13.py

Your first variable is: apple

Your second variable is: orange

Your third variable is: grapefruit

你可以将 first , 2nd ,和 3rd替换成任意你喜欢的3个参数。如果你没有运行对,你可能会看到的错误信息:

$ python ex13.py first 2nd

Traceback (most recent call last):

File "ex13.py", line 3, in

script, first, second, third = argv

ValueError: need more than 3 values to unpack

argv和raw_input()的区别就讲到这里了,大家都弄明白了吗?如果还有关于Python方面的学习疑问,欢迎大家来博学谷官网报名Python在线课程~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值