类型错误:'int' 对象不是可迭代错误 2222222222222222

时间:2021-04-19 10:52:37

标签: python

我正在尝试将 Pi 转换为分数,但我发现了一个错误,所以我不知道如何解决。

pi = 141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982148086513282306647093844609550582231725359408128481117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249141273724587006
    ans = 10
    for i in int(pi):
        if i.isint:
            ans += str("0")
        else:
            active = False
    s = str("3") + str(pi)
    print(f"{s} / {ans}")

1 个答案:

答案 0 :(得分:1)

您不能迭代整数值。您可以先将该值用作字符串。然后你可以使用 isdigit() 来检查给定的值是否是一个数字。最后,当您想要进行数学运算时,将它们转换为整数。您不需要将“0”转换为字符串,因为它已经是字符串了。

下面是一个例子:

    pi = "141592653589793238462643383279502884197169399375105820974944592307816406286208998628034825342117067982148086513282306647093844609550582231725359408128481117450284102701938521105559644622948954930381964428810975665933446128475648233786783165271201909145648566923460348610454326648213393607260249141273724587006"
    ans = "10"
    for i in pi:
        if i.isdigit():
            ans += "0"
        else:
            active = False
    s = "3" + pi
    print(int(s) / int(ans))

这将返回 0.3141592653589793