大爽Python入门教程 5-1 `input`输入
大爽Python入门公开课教案 点击查看教程总目录
1 input
函数介绍
python 2.x 中,有
raw_input()
函数。
python 3.x 中只有input()
函数。
使用input
函数,可以读取标准输入,即用户输入。
input
函数可以接受prompt
作为可选参数,
可以将prompt
作为提示输出到控制台,再接受用户输入。
示例如下
>>> a = input()
asdfas
>>> a
'asdfas'
>>> name = input("input a name: ")
input a name: harry
>>> name
'harry'
补充说明: 轻量级ide atom不支持接受用户输入,sublime text 支持的也很有限。
如果代码里面要使用input
,这里推荐使用pycharm
或者vs code
2 使用循环获取数字
代码里面,我们常常需要用户输入数字。
有的简单题目里面,会假设用户输入的数字,不考虑用户输入其他的情况。
但是稍微成熟一点的程序,都要处理这个问题。
有很多办法,我们这里使用循环加数字判断来确保获取输入数字
代码如下
num = input("Please enter a num: ")
while not num.isdigit():
num = input("Please enter a num: ")
print("Your num: %s" % num)
运行实例如下
Please enter a num: a
Please enter a num: dd
Please enter a num: 123a
Please enter a num: 123
Your num: 123
3 使用循环获取指定输入
假设我们在开发一个非常简易的选课系统,
需要检测用户选择的课程,在我们的可选课程中。
那么也推荐使用循环,来确保用户的选择是符合规则的。
courses = ["math", "music", "grammar", "history"]
course = input("Please select a course: ")
while course not in courses:
print("Invalid selection: %s" % course)
course = input("Please select a course: ")
print("You select course: %s" % course)
运行实例如下
Please select a course: dance
Invalid selection: dance
Please select a course: paint
Invalid selection: paint
Please select a course: math
You select course: math
4 使用函数包装功能
对于大一点的项目,
推荐把第二部分第三部分的代码写进一个函数里,方便调用。
获取数字的功能写进函数
def get_num():
num = input("Please enter a num: ")
while not num.isdigit():
num = input("Please enter a num: ")
return num
选择指定课程的功能写进函数
def select_course():
courses = ["math", "music", "grammar", "history"]
course = input("Please select a course: ")
while course not in courses:
print("Invalid selection: %s" % course)
course = input("Please select a course: ")
return course