在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
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 <module>
script, first, second, third = argv
ValueError: need more than 3 values to unpack
argv和raw_input()的区别就讲到这里了,大家都弄明白了吗?如果还有关于Python方面的学习疑问,欢迎大家来博学谷官网报名Python在线课程~
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
人工智能python入门基础教程学哪些内容?
人工智能python入门基础教程学哪些内容?Python课程内容:在python中使用数字、编程中的逻辑、在字符串中存储文本、信息的输入和输出、列表、使用循环重复代码、创建简单的脚本等。初学者可以在网站找到很多的免费资源。
9483
2019-04-10 00:08:19
零基础入门Python常见问题分享
零基础入门Python常见问题有哪些?作为经常混迹在各大Python技术论坛的小编而言,见到最多的话题就是:学习Python难不难?零基础可以学习Python吗?如何学习Python?等等。今天小编就以过来人的身份为大家分享一下这些常见的Python入门问题。
4662
2019-10-31 18:42:16
Python为什么这么火?编程零基础该如何学习Python?
Python为什么这么火?编程零基础该如何学习Python?其实Python的火爆不是偶然,时代的潮流驱动也好,自身的语言优势也好,对于零基础的学习者来说,学习Python都是最好的选择。至于Python学习方式有很多,看书、报培训班都是比较靠谱的,看大家适应哪种学习模式。
5546
2019-11-20 13:21:14
Python入门实战项目有哪些适合新手?
目前市面上有很多适合新手的Python入门练手项目,Python入门需要理论与实践相结合,前面夯实基础知识,后面通过实战项目帮助你更好的运用这些Python知识。
5067
2020-10-13 16:56:23
Group by分组查询怎么用?需要掌握哪些内容?
Group by分组查询怎么用?需要掌握哪些内容?groub by分组将查询结果按照1个或多个字段进行分组,字段值相同的为一组,可用于单个字段分组也可用于多个字段分组。
4024
2022-01-17 16:14:02