我的程序类似于以下内容:

try:
    age = int(input("age : "))
    xfactor = 10 / age
except (ValueError, ZeroDivisionError):
    print("you didnt enter a valid age")
for ValueError, ZeroDivisionError in range(3):
    print("just try a number")
else:
    print("thank you")

我得到了:

TypeError: cannot unpack non-iterable int object

我希望程序发送一条消息,当用户输入错误的3次.

推荐答案

将您的代码包装在for循环中:

for i in range(3):
    try:
        age = int(input('age : '))
        xfactor = 10 / age
    except (ValueError, ZeroDivisionError):
        print('you didnt enter a valid age')
    else:
        print('thank you')
        break

Python相关问答推荐

FastAPI:使用APIRouter路由子模块功能

如何才能将每个组比上一组增加N %?

避免循环的最佳方法

在for循环中仅执行一次此操作

在Pandas框架中截短至固定数量的列

Odoo -无法比较使用@api.depends设置计算字段的日期

如何使用pandasDataFrames和scipy高度优化相关性计算

仿制药的类型铸造

抓取rotowire MLB球员新闻并使用Python形成表格

需要计算60,000个坐标之间的距离

Excel图表-使用openpyxl更改水平轴与Y轴相交的位置(Python)

scikit-learn导入无法导入名称METRIC_MAPPING64'

2D空间中的反旋算法

PMMLPipeline._ fit()需要2到3个位置参数,但给出了4个位置参数

如何调整QscrollArea以正确显示内部正在变化的Qgridlayout?

剪切间隔以添加特定日期

导入错误:无法导入名称';操作';

使用__json__的 pyramid 在客户端返回意外格式

如何将一组组合框重置回无 Select tkinter?

使用tqdm的进度条