第7行类型错误:如果(integerr%numberr)>=1,则在字符串格式化期间并非所有参数都已转换:

2024-09-29 23:32:59 发布

您现在位置:Python中文网/ 问答频道 /正文

name = input("Say your name: ")
integerr = input(name + " pick an integer ")
numberr = input(name + " pick another integer ")

如果(integerr%numberr)>;,这就是我得到错误的地方1:

    print(integerr + " is divisible by " + numberr) 

else:
    
    print(integerr + " is not divisible by " + numberr)

Tags: namegtaninputyourbyisanother
1条回答
网友
1楼 · 发布于 2024-09-29 23:32:59

你有两个错误

  1. 您需要检查if integerr % numberr == 0,因为这意味着numberr平均地分成integerr;因此integerr可以被numberr整除

  2. input始终返回字符串,如Simsteve7所述。您可以使用int()转换为整数,并使用str()转换为字符串

下面是Python 2的解决方案:

name = input("Say your name: ")
integerr = int(input(name + " pick an integer "))
numberr = int(input(name + " pick another integer "))
if (integerr % numberr) == 0:
    print(str(integerr) + " is divisible by " + str(numberr)) 
else:
    print(str(integerr) + " is not divisible by " + str(numberr))

如果您使用的是Python 3,那么可以使用f字符串。看起来是这样的:

if (integerr % numberr) == 0:
    print(f"{integerr} is divisible by {numberr}") 
else:
    print(f"{integerr} is not divisible by {numberr}") 

相关问题 更多 >

    热门问题