我的代码当前允许用户输入 4 个数字,我想允许 6 个数字,我该怎么做,我尝试将 < 4 编辑为 6,但我完全无法理解它,我也想要用户如果愿意的话只能输入 4 个数字,但我需要程序要求 6 个
import itertools
nums = []
while len(nums) < 4:
try:
num = int(input("Enter a number:"))
if num not in range(10):
raise ValueError
else:
nums.append(num)
except ValueError:
print("Only integers 0-9 allowed!")
for x in itertools.permutations(nums):
print(''.join(str(n) for n in x)) `
最佳答案
这是一种实现我认为您想要实现的目标的方法(不是最优雅,但仍然是):
nums = []
print('You need to enter minimum 4 digits and upto 6')
while len(nums) < 6:
try:
num = int(input("Enter a digit 0-9:"))
if num not in range(10):
raise ValueError
else:
nums.append(num)
if 3 < len(nums) < 6:
if input("Add more digits? [y/n]") != 'y':
break
except ValueError:
print("Only integers 0-9 allowed!")
print(nums)
您可以通过提供停止选项来修改基于 len(nums) 的数字输入请求,这样用户感觉更好,尽管它需要更多的编码。
关于python - 我如何允许用户输入 6 位数字而不是 4 位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59213165/