6.1 函数input()的工作原理
函数input()使程序暂时停止,等待用户进行输入。获取用户输入以后,将其存入到一个变量当中,方便用户的使用
函数input()接受一个参数:即向用户显示的提示或者说明
每当你想要使用函数input()的时候,都应该向用户提供清晰而易懂的提示
6.1.1 使用int()来获取数值的输入
number= input("请输入一个数字:")
print(number)
print(type(number))
number=int(number)
print(number)
print(type(number))
使用int()函数的原因:
由于在Python中使用input()函数获得的数据均为字符串,如果我们需要特定的数据形式,我们就需要进行强制类型转换
int()函数的本质:强制类型转化
6.1.2 求模运算符:%,类似于C语言在此不作过多的描述
6.1.3 在Python2.7中获取输入
在Python2.7中,应该使用raw_input()函数来提示用户进行输入,同py3一样将输入解读为字符串
py2.7中同样含有input()函数,但是它将用户的输入解读为py的代码,并尝试运行他们
在这种情况下,最好的情况为程序的运行出错,而最糟糕的结果是,运行原本没有任何含义的代码
6.2 while循环的相关知识
6.2.1 使用while循环
flag = 0
while flag < 5:
print(flag)
flag = flag + 1
提示:
循环变量的不能在while语句的后面进行定义,需要提前去做处理
6.2.2 退出while语句
通过设置while循环的条件或者在循环中设置if语句进行退出
flag = 0
while 1:
print(flag)
flag = flag + 1
if flag==3:
break
#如果需要在while语句的后面直接设置循环结束条件,在开始循环之前一定要对循环条件做初始化的操作
6.2.3 continue语句与break语句的结合有助于循环的操作
6.2.4 在写循环语句的时候要避免无限循环
6.3 使用while循环来处理列表或者字典
for循环是一种遍历列表的有效方式,但是在for循环中不应该修改列表,否则将导致Python无法追踪其中的元素
要在遍历列表的同时对列表进行修改,可以采用while循环
通过while循环同列表和字典结合起来使用,可以收集、存储并组织大量的输入,供查看和显示
6.3.1 在列表之间移动元素
My_user = ['alice','brain','candac']
next_user = []
mid=[]
while My_user:
flag = My_user.pop()
if flag=='alice':
next_user.append(flag)
else:
mid.insert(0,flag)
My_user=mid[:]
del mid
print(My_user)
print(next_user)
注意:
当元素在列表与列表之间移动的时候,如果所你要将当前列表的值全部转移到另外的一个列表当中的时候,较为简单
但是如果需要保存部分值,我目前只会通过中间列表来实现
6.3.2 删除包含特定值的所有列表元素
Mylist=[1,2,3,4,1,1,0,0,0,1,1]
print(Mylist)
while 0 in Mylist:
Mylist.remove(0)
print(Mylist)
6.3.3 通过用户输入来填充字典
Mylist={}
while 1:
name = input("请输入名字:")
telephone= input("请输入你的电话号码:")
Mylist[name]=telephone
flag=input("是否继续输入,是:1,否:任意")
if flag != '1' :
break
for i in Mylist.keys():
print(i+"的电话为:"+Mylist[i])
6.4 习题
car_size = input("你需要什么样子的车?")
print("let me see if I can find you a Subaru")
number = input("请问你们一共有多少人需要用餐?")
number = int(number)
if number > 8:
print("我们这里的空位不够")
else:
print("我们这里有充足的空位")
number = input("请输入一个数字")
number = int(number)
if number % 10 == 0:
print(number,"是10的倍数")
else:
print(number,"不是10的倍数")
flag = ""
list1 = []
while flag != "quit":
flag = input("请输入披萨的配料")
if flag == "quit":
break
list1.append(flag)
print("我们会在披萨里添加" + flag)
for i in list1:
print("披萨的配料有:"+i)
sandwich_orders=['malal','hjbjlh','jsksksk','jsksksh']
finished_sandwich=[]
sandwich_orders.sort()
while sandwich_orders:
mid=sandwich_orders.pop()
print(mid+"已经完成!")
finished_sandwich.append(mid)
print(finished_sandwich)