如何读入用户输入
1、函数input()的工作原理
name = input("Please enter your name: ")#读入用户输入
print("Hello, " + name + "!")
input()函数的第一个参数是向用户显示的提示或说明。
2、使用int()来获取数值输入
使用函数input()时,python将用户输入解读为字符串。
如果想要读入数值,可用函数int()
(int)age #将字符串型age转化为数值型
while循环
number = 1
while number <= 5:#打印1~5
print(number)
number +=1
输出为:
1
2
3
4
5
插曲:为什么python没有自增运算?
我们先看一个例子:
a = 5
b = 5
print(id(a))
print(id(b))
输出为:
140719329371088
140719329371088
可以看出, python 中,变量是以内容为基准而不是像 c 中以变量名为基准,所以只要你的数字内容是5,不管你起什么名字,这个变量的 ID 是相同的,同时也就说明了 python 中一个变量可以以多个名称访问。
这样的设计逻辑决定了 python 中数字类型的值是不可变的,因为如果如上例,a 和 b 都是 5,当你改变了 a 时,b 也会跟着变,这当然不是我们希望的
因此,正确的自增操作应该 a = a + 1 或者 a += 1,当此 a 自增后,通过 id() 观察可知,id 值变化了,即 a 已经是新值的名称。
a = 5
b = 5
a += 1 #a自增1
print(id(a))
print(id(b))
输出为:
140719329371120
140719329371088
重新回到while循环
1、使用break退出循环
while true:
break
2、使用continue继续循环
使用while循环处理列表和字典
1、在列表之间移动元素
假设有一个列表,其中包含新注册但还未验证的网站用户,验证这些用户后,如何将他们移动到另一个已验证用户列表呢?
#创建一个待验证用户列表和一个存储已验证的用户列表
uncomfirmed_users = ['alice', 'brian', 'candace']
comfirmed_users = []
#验证每个用户,直到没有未验证的用户为止
#将每个经过验证的列表都移到已验证用户列表中
while uncomfirmed_users:
current_user = uncomfirmed_users.pop()
print("Verifying user: " + current_user.title())
comfirmed_users.append(current_user)
#显示所有已验证的用户
print("\nThe following users have been comfirmed:")
for comfirmed_user in comfirmed_users:
print(comfirmed_user.title())
输出为:
Verifying user: Candace
Verifying user: Brian
Verifying user: Alice
The following users have been comfirmed:
Candace
Brian
Alice
2、删除包含特定值的所有列表元素
pets = ['dog', 'cat', 'dog', 'rabbit', 'cat']
print(pets)
while 'cat' in pets:
pets.remove('cat')#删除特定的元素
print(pets)
输出为:
['dog', 'cat', 'dog', 'rabbit', 'cat']
['dog', 'dog', 'rabbit']