目录
Take multiple inputs using a for loop in Python
在 Python 中使用 for 循环获取多个输入
要使用 for 循环获取多个输入:
- 声明一个新变量并将其初始化为一个空列表。
- 使用
range()
该类在一个for
循环中循环N次。 - 在每次迭代中,将用户输入附加到列表中。
# ✅ Take multiple string inputs using for loop my_list = [] for _ in range(3): my_list.append(input('Enter a color: ')) print(my_list) # ---------------------------------------------- # ✅ Take multiple integer inputs using for loop my_list = [] for _ in range(3): try: my_list.append(int(input('Enter a number: '))) except ValueError: print('The provided value is not an integer') print(my_list)
第一个示例从用户那里获取多个字符串输入并将它们附加到列表中。
我们使用range()
该类在一个for
循环中迭代 3 次,并在每次迭代时提示用户输入。
range类通常用于在循环中循环特定次数,for
并采用以下参数:
姓名 | 描述 |
---|---|
start |
表示范围开始的整数(默认为0 ) |
stop |
向上,但不包括提供的整数 |
step |
范围将由每 N 个数字组成,从start 到stop (默认为1 ) |
如果您只将单个参数传递给range()
构造函数,则它被认为是stop
参数的值。
for n in range(5): print(n) result = list(range(5)) # 👇️ [0, 1, 2, 3, 4] print(result)
start
省略参数,则默认为0
,如果step
省略参数,则默认为1
.如果您需要在for
循环中从用户输入中获取多个整数值,请使用int()
该类来转换每个值。
my_list = [] for _ in range(3): try: my_list.append(int(input('Enter a number: '))) except ValueError: print('The provided value is not an integer') print(my_list)
输入函数接受一个可选prompt
参数并将其写入标准输出而没有尾随换行符。
然后该函数从输入中读取该行,将其转换为字符串并返回结果。
input()
函数保证返回一个字符串,即使用户输入一个整数。我们使用了一个try/except
语句来处理如果使用一个不是有效整数的值调用类时ValueError
引发的。int()
或者,您可以使用列表理解。
my_list = [input('Enter a color: ') for _ in range(3)] print(my_list) # ---------------------------------------------- my_list = [input('Enter a number: ') for _ in range(3)] print(my_list)
这些示例使用列表理解从用户那里获取多个输入。
列表推导用于对每个元素执行某些操作或选择满足条件的元素子集。
在每次迭代中,都会提示用户输入。
请注意,我们不能try/except
在列表理解中使用语句进行验证。
在 Python 中使用 while 循环获取多个输入
要使用 while 循环获取多个输入:
- 声明一个新变量并将其初始化为一个空列表。
- 使用
while
循环迭代,直到列表达到一定长度。 - 使用该
list.append()
方法将每个输入附加到新列表。
# ✅ Take multiple user input values until list contains min 3 items my_list = [] while len(my_list) < 3: user_input = input('Enter a color: ') my_list.append(user_input) print(my_list) # ---------------------------------------------- # ✅ Take multiple user input values until user types 'done' my_list = [] while True: user_input = input('Enter a color: ') if user_input == 'done': break my_list.append(user_input) print(my_list)
这些示例使用while
循环从用户那里获取多个输入。
第一个while
循环迭代直到列表包含至少 3 个项目。
my_list = [] while len(my_list) < 3: user_input = input('Enter a color: ') my_list.append(user_input) print(my_list)
一旦用户输入 3 个值,条件不再满足,我们就跳出while
循环。
在每次迭代中,我们使用该list.append()
方法将输入值添加到列表中。
list.append
()
方法将一个项目添加到列表的末尾。
或者,您可以使用while True
循环。
my_list = [] while True: user_input = input('Enter a color: ') if user_input == 'done': break my_list.append(user_input) print(my_list)
循环接受用户的输入,直到他们输入done
。
您还可以使用空字符串作为退出循环的条件。
my_list = [] while True: user_input = input('Enter a color: ') if user_input == '': break my_list.append(user_input) print(my_list)
一旦用户Enter
在没有输入值的情况下按下按钮,该if
块就会运行。
break
语句跳出最内层的封闭或
for
循环while
。
输入函数接受一个可选prompt
参数并将其写入标准输出而没有尾随换行符。
然后该函数从输入中读取该行,将其转换为字符串并返回结果。
input()
函数保证返回一个字符串,即使用户输入一个数字。如果您需要从用户输入中获取多个整数,请确保使用
int()
该类将每个字符串转换为整数。
my_list = [] while True: user_input = input('Enter a number: ') if user_input == '': break try: my_list.append(int(user_input)) except ValueError: print('Invalid number.') continue print(my_list)
我们使用int()
该类将每个字符串转换为整数。
该try/except
语句用于处理将ValueError
无效整数传递给int()
类时引发的 。