用户输入和while循环
1 函数 input() 的工作原理
name = input("Plesase input your name:")
print("Your name is : " + name )
prompt = "If you tell us who you are, we can personalize the messages you see."
prompt += "\nWhat is your first name? "
name = input(prompt) #同时显示两行信息并获取输入信息
print("\nHello, " + name + "!")
1.1 使用 int() 来获取数值输入
input() 函数默认获取输入值为字符串形式。通过int()函数可以将其转化为数字形式。
>>> age = input("How old are you?\n")
>>> age #输出'num',为字符串的形式
>>> age = int(input("How old are you?\n"))
>>> age #输出num,为数字形式
1.2 求模运算符
求模运算符(%),返回两数相除的余数
num = int(input("Enter a number, and tell you if it's even or odd: "))
if((num % 2) == 0):
print("\n The number " , num, " is even.")
else:
print("\nThe number ", num, " is odd.")
2 while循环简介
for循环用于针对集合中的每个元素都一个代码块,而while循环不断地执行,直到指定的条件不满足为止
2.1 使用while循环
num = int(input("The number you want to cycle: "))
while num > 0:
print(num)
num -= 1
2.2 使用标志
Flag = True
while(Flag):
num = int(input("Please input which num you like: "))
if(num >= 10):
Flag = False
else:
print(num)
2.3 使用break退出循环
Flag = True
while(Flag):
num = int(input("Please input which num you like: "))
if(num >= 10):
break
else:
print(num)
2.4 在循环中使用continue
Flag = True
while(Flag):
num = int(input("Please input which num you like: "))
if(num >= 10):
continue
else:
print(num)
3 使用while循环来处理列表和字典
3.1 在列表之间移动元素
#定义一个列表及一个空列表
unconfirmed_users_name = ['Mars', 'Mark','Bill']
confirmed_users_name = []
#当列表不为空时,从列表末尾依次取出字符串,并添加到空列表中
while unconfirmed_users_name:
current_user_name = unconfirmed_users_name.pop()
confirmed_users_name.append(current_user_name)
#依次输出原空列表中的字符串
for user_name in confirmed_users_name:
print(user_name)
3.2 删除包含特定值的所有列表元素
pets = ['dog', 'cat', 'dog', 'goldfish', 'cat', 'rabbit', 'cat']
while 'cat' in pets: #查找列表中为cat的字符串
pets.remove('cat') #删除列表中cat的字符串
print(pets)
3.3 使用用户输入来填充字典
person = {} #空字典
Flag = True
while Flag:
name = input("\nWhat's your name? ")
age = int(input("How old are you? "))
person[name] = age
repeat = input("Would you like to let another person info?(Yes/No) ")
if repeat == 'No':
Flag = False
print("\n======== Result ========\n")
for name, age in person.items():
print("name: " + name+ "\n" + "age: ", int(age))