python 如何在列表中达到特定数量的元素后停止请求输入?

f2uvfpb9  于 2023-01-16  发布在  Python
关注(0)|答案(2)|浏览(229)

所以我会使用python让用户按顺序输入数字,比如说评级
例如
1
2
99
并将这些评等保存为列表中的元素
但是我想增加两个限制,用户只能输入最多30个评价,“最多”是指用户只能输入两个评价、三个、二十个等等等等,但是不能超过30个评价。
我希望评分值是一个大于0小于100的两位整数
所以我想有这样的东西:
“请输入您的分级:“
如果用户输入例如199或ADFADF,那么我希望有一个错误消息,并要求重复一个有效值
或者如果用户试图输入超过30个评级,我希望程序打印第二条错误信息,并停止要求额外的输入(并将所有以前的输入保存到列表中)。

py49o6xq

py49o6xq1#

对于验证部分,你可以使用printy,这个库提供了一个函数来帮你完成,首先,安装printy:pip install printy
然后导入此函数from printy import inputy
现在,你必须创建一个循环,当用户输入了30个有效值时,循环结束,另外,还有一个循环,检查值是否是两位数。

from printy import inputy

ratings = []

while len(ratings) < 30:
    valid_rating = 100  # let's use an invalid value to launch the loop
    while valid_rating >= 100:
        valid_rating = inputy("Enter a rating", type="int", condition="+")
    ratings.append(valid_rating)

链接到printy:https://github.com/edraobdu/printy

wfsdck30

wfsdck302#

使用继续和中断的情况下明智地作出一个可行的权利计划。

相关问题