0%

Python - 对于用户输入和 while 循环语句的学习

学习 ‘input()’ 的基本使用

‘input()’ 函数可以使程序暂停,并输入一段文字,提醒用户应该输入什么信息,并且将用户的输入赋值给相应的变量(可以同时复制多个变量。)。

1
2
owo = input('Please enter a text.')
print(owo)

使用 ‘int()’ 来获取数值输入

如果直接使用 ‘input()’ 直接获取用户输入的话,获取的会是一段字符串,如果这个时候想要获取一段数值的话,就需要用到 ‘int()’ 函数来讲字符串转化为数值。

1
2
owo = int(input('Please enter a number.'))
print(owo)

while 循环语句的基本使用

while 循环语句的基本工作流程

while 循环语句会先检查条件语句的值是否为 True,如果条件语句的值为 True,则继续执行代码块直到条件变为 False,然后终止循环,跳过 while 循环语句包括的代码块。如果在第一次 while 循环语句检测条件语句的值是 False,则直接跳过 while 循环语句包裹的代码块。

开始简单的使用 while 语句

例:

1
2
3
4
5
6
7
8
9
10
11
number = 1
while number <= 5:
print(number)
number += 1

# output result
# 1
# 2
# 3
# 4
# 5

想要使用 while 语句,就需要先创建一个或者多个变量,使 while 的条件语句出现的值等于一个布尔变量。写完一个 while 循环语句之后,尽量对循环体进行检查,不然可能导致意想不到的结果,比如程序进入一个死循环,或者程序提前退出,没有达到预期的效果。

如何使 while 循环在用户想要退出的时候退出

while 循环语句会检测条件语句最终得到的布尔值来决定循环是否继续,所以我们可以使用户参与到程序的变量的赋值,以此来达到使 while 循环语句在特定的阶段时,由用户自行选择是否退出程序。

例:

1
2
3
flag = ''
while flag = 'exit'
flag = input('Do you want to exit the program now?')

这种情况下,当用户输入“exit”之后,程序就会停止运行。想要录入用户的输入,可以使用 input() 函数。

使用多个条件来决定 while 循环语句是否继续循环

当需要使用多个条件来决定 while 循环语句是否继续循环时,可以设置一个 标志

  1. 如果需要多个条件同时满足时,可以设置一个变量作为 while 循环语句的条件语句,即标志,当有一个条件不满足时,将标志的值更改为 False,即可停止 while 循环。
  2. 当有多个条件,但是只需要一个条件满足时,可以先为每个条件都创建一个专属的变量,然后根据条件是否满足,赋值给每个变量一个布尔值,最后将所有变量的布尔值使用逻辑或连接计算,将最后得出的值赋值给标志。

例:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 1 的例题。
flag = True
while flag = True:
1 = input('Please enter "True" or "False".)
if 1 = False:
flag = False
2 = input('Please enter "True" or "False".)
if 2 = False:
flag = False

# 2 的例题。
flag = True
while flag = True:
1 = input('Please enter "True" or "False".)
2 = input('Please enter "True" or "False".)
if 1 or 2 = False:
flag = False

使用 break 或者 continue 退出循环的区别

想要退出一个循环有两种办法,第一个就是使用 break 不执行接下来的代码直接退出最近的一层循环,第二个就是使用 continue 退出本次循环,但是还继续执行循环语句直到条件不满足。
例:

1
2
3
4
5
6
7
8
9
10
11
12
13
# 使用 break 退出循环
condition = True
while condition = True:
number = input('Enter an integer up to ten, including zero.')
if number = '4':
break

# 使用 continue 退出循环
condition = True
while condition = True:
number = input('Enter an integer up to ten, including zero.')
if number = '4':
continue

使用 while 循环语句处理列表和字典

在列表之间移动元素

从列表中提取出元素,并删除原列表中的这个元素,再将此元素赋值给另一个列表,往复循环即可达到在列表之间移动元素的目的。

1
2
3
4
first = [1, 2, 3]
second = []
while first:
second.append(first.pop())

删除为特定值的所有列表元素

想要删除列表中的所有的一个特定的元素,需要使用 while 循环语句来不断地删除这个元素并且检查元素是否还在这个列表中。

1
2
3
first = [1, 2, 3, 3, 3]
while 3 in first:
first.remove(3)

将用户的输入填充到字典中

1
2
3
4
5
6
7
8
9
10
11
responses = {}
active = True
while active:
name = input('What\'s your name?\n')
response = input('What do you want to enter?\n')
responses[name] = response
repeat = input('Should the procedure continue?(yes or no)\n')
if repeat == 'no':
active = False
for name, response in responses.items():
print(f'{name} Inputs: {response}.\n')

欢迎关注我的其它发布渠道