python - 这个简单的代码给了我硬语法错误,除数代码
问题描述
def main():
user_number = float(input("Enter a number: "))
num = user_number//2
round(num,0)
int(num)
print(num)
divisor = 1
for divisor in range(divisor,num):
if num%divisor == 0:
print(divisor)
while True:
main()
我得到的语法错误:TypeError: 'float' object cannot be Explained as an integer
解决方案
结果num = user_number // 2
是一个浮点数。
该调用round(num, 0)
什么也不做,因为您没有将结果存储在num
变量中。无论如何,结果是float
. 你应该改写num = int(num)
。
推荐阅读
- css - 检查 Reactjs 中的 CSS 参考文件
- python - 从索引数组中,在这些索引处创建一个值数组
- mongodb - 使用成员编号保存文档,而不是使用 protobuf-net 和 MongoDB 的名称
- javascript - Momentjs 没有将某些西班牙月份转换为 UTC
- mysql - 将 3 列分组为 1 列并生成计数 SQL
- javascript - 接受任意数量的键值对象的接口
- php - PHP关联数组计数和提取
- ios - React Native - 找不到名称为“scrollTo”的命令
- javascript - 用循环动态填充变量
- javascript - Extjs:如何从控制器设置额外参数以在商店中用于填充组合框值。想要将额外参数值设置为 abc.1-cond1、abc.2-con2