7.1函数input的工作原理
函数input()让程序暂停运行,等待用户输入一些文本。获取用户输入后,python将其存储在一个变量中,以方便你使用。
注:python2 下 raw_input。
python2 下 input,不推荐用。输入的时候自动找变量。需要加“”。
python3 下 input。
例如:下面的程序让用户输入一些文本,再将这些文本呈现给用户:
message=raw_input("Tell me something,and I will repeat it back to you:")
print message
运行结果如下:
7.1.1编写清晰的程序
每当你使用函数input()时,都应指定清晰而易于明白的提示,准确地指出你希望用户提供什么样的信息——任何指出用户该输入何种信息的提示都行,如下所示:
name=raw_input("Please enter your name: ")
print ("Hello,"+name+"!")
运行结果如下:
有时候提示可能超过一行,例如,你可能需要指出获取特定输入的原因。在这种情况下,可将提示存储在一个变量中,再将该变量传递给函数input()。这样,即使提示超过一行,input()语句也非常清晰。
prompt="If you tell us who you are,we can personalize the messages you see."
prompt+="\nWhat is your first name? "
name=raw_input(prompt)
print ("\nHello,"+name+"!")
运行结果如下:
7.1.2使用int()来获取数值输入
使用函数input()时,python将用户输入解读为字符串。请看下面让用户输入其年龄的解释器会话:
age=raw_input("How old are you? ")
运行结果如下:
用户输入的值是25,但我们请求python提交变量age的值时,它返回的是‘25’,用户输入的数值的字符串表示。我们怎么知道python将输入解读成了字符串呢?因为这个数字用括号括起来了。如果我们只想打印输入,这一点问题都没有;但如果你试图将输入作为数字使用,就会引发错误:
为解决这个问题,可使用函数int(),它让python将输入视为数值。函数int()将数字的字符串转换为数值表示:
age=int(age)
7.1.3求模运算符
处理数值信息时,求模运算符(%)是一个很有用的工具,它将两个数相除并返回余数
num=4%3
print num
运行结果如下:
求模运算符不会指出一个数是另一个数的多少倍,而只指出余数是多少。
如果一个数可被另一个数整除,余数就为0,因此求模运算符将返回0.你可利用这一点来判断一个属是奇数还是偶数
number=raw_input("Enter a number,and I'll tell you if it's even