译者注:原作者留的练习任务都比较灵活,并不是具体的要求。而根据我自身的经验,很多同学看到这种需要探索精神的要求,可能就不愿意自己去进一步探索了(或者不知道具体要探索什么)。所以我在这里放上另外一篇我觉得还不错的教程,大家可以去看看里面的代码,把里面的代码照着敲一敲,作为练习。写程序最开始的时候最枯燥,希望大家能坚持下去,相信大家最后都能成为大牛。
从放弃到入门:pythonhttp://learnpythonthehardway.org/book/
另:原作者某些地方语焉不详,我会增加一些内容作为解释说明,为了方便阅读,这些由我增加的内容不再额外标注。
======================================================================
在上一篇‘如何学python’里,我们介绍了一些基本的字符串处理方法并做了一些练习;这些操作可以被用来处理用户的输入。在今天这篇文章里,我们会介绍如何获取用户的输入。
用户的输入在脚本编程里十分重要。如果我们连用户想要什么(这常常通过用户输入体现)都不知道,又怎么满足用户的需求呢? Python中有好几种获取用户输入的办法:
通过这些方法,我们甚至可以在程序运行之前获得用户的输入。本节课我们先使用方法1,其他两种方法会在后续课程中介绍。
Python的输入功能函数(function)
使用python内建的raw_input()函数就可以获取用户的输入。在python中还有另一个用于输入的函数input(),input()会根据用户输入变换返回值的类型,如果你想输入字符或者字符串,就必须要用引号把他们包起来。而raw_input()则是不管用户输入什么类型的都会转变成字符型.。在这里我们使用raw_input()。
获取输入
首先,我们先单纯的用这个函数,看看它是怎么一回事儿。先在你的python命令行里输入”raw_input()”,然后敲下回车。
我们会发现屏幕上显示了一行空白。这就是raw_input()函数的默认输入提示符。
我们来输入一些内容,看看会发生什么:
输入了”input!”后,我们会发现raw_input()函数直接返回了我们的输入内容。
定制你的命令提示符
当我们提取输入时,我们往往需要提示用户要输入的内容,而不是仅仅显示一行空白。这就是raw_input()的预留参数的作用。如果我们用一个字符串作为参数,它就会在用户进行输入之前,先显示这个字符串,提示用户他需要输入一些什么。让我们看看他是怎么运行的:
我们为raw_input函数提供了”Give me your input!”作为参数。它和我们期待的一样,在接受用户输入之前进行了提示。
输入函数的返回结果
在前面我们已经见识过了raw_input()可以返回我们的输入内容。我们可以把这个返回值赋值给变量,达到存储用户输入的数据的目的。我们可以输入以下命令:
通过输出test变量的值,我们发现,刚才的输入已经被成功的保存在了test变量里。
小结
现在,让我们做个练习,把前面学的东西稍微总结一下。
(原作者直接在这儿贴了代码,我觉得不太好,大家可以先自己想想,然后再看答案。我会把代码贴在文章的最后。)
我们的目的:
1. 请求用户输入他的名字和所在地,并提示用户需要输入的东西是什么。
2. 将用户输入的返回值赋值给变量。
3. 将赋值之后的变量输出出来。尽量做到让用户知道你输出的东西是什么。
在实际使用中,我们可能会有一些更复杂的要求,比如让用户输入一个主机的ip地址,或者让用户决定程序接下来要做什么等等(记得Sqlmap里问你要不要继续的那个白色的提示符?Y/n/q)。我们现在学的内容还不足以应付所有的情况,但是应付目前的练习需求,足矣。
练习
自己试试今天学的东西,结合前两天的所学活学活用一下。别怕尝试,多敲代码。你可以把自己写的代码贴出来,然后我们一起讨论讨论。
这里附上上面的答案:
======================================================================
原文系列链接:http://null-byte.wonderhowto.com/how-to/python-training/