在线客服
扫描二维码
下载博学谷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的网站——博学谷。博学谷是传智播客旗下IT在线教育品牌,面向各个学习能力不同阶段学员,在这个平台上大家可以随时随地观看学习视频资源,还有高级讲师在线指导,真正做到让大家从入门到精通。下面详细讲一讲博学谷网站学习的优势。
9675
2019-08-05 15:29:18
零基础入门Python常见问题分享
零基础入门Python常见问题有哪些?作为经常混迹在各大Python技术论坛的小编而言,见到最多的话题就是:学习Python难不难?零基础可以学习Python吗?如何学习Python?等等。今天小编就以过来人的身份为大家分享一下这些常见的Python入门问题。
6850
2019-10-31 18:42:16
学习Python后能找什么工作
想学习Python的小伙伴们,肯定听到非常多关于Python就业方向非常广泛的话题。那到底学习完成后,能够从事哪些方面的工作呢?具体相关Python的工作岗位有哪些呢?带着问题我们一起深入了解一下Python的就业前景。
7571
2020-05-15 18:02:44
为什么要学Python不学别的?
大家都知道近期学Python很热门,但不知道为什么。同样是编程语言,为什么偏偏Python深受程序员的喜爱。理清其中关窍对大家的Python学习将很有帮助,特别是对于想要入行的小白。Python是编程语言中最自由的,语法简洁清晰。在进行编程任务时编写代码少,代码简单易读,工作效率更高,也更高效。
6322
2020-06-15 16:20:50
PyMySQL的使用方法有哪些?怎么用?
PyMySQL的使用方法有哪些?怎么用?PyMySQL一个纯Python实现的MySQL客户端库,支持兼容 Python 3用于代替 MySQLdb,其使用方法和MySQLdb几乎相同,但目前pymysql支持python3.x而后者不支持3.x版本。
7806
2022-01-25 11:10:34
