Keep getting TypeError: 'int' object is not iterable
Keep getting TypeError: 'int' object is not iterable
我不断收到此错误:
类型错误:'int' 对象不可迭代。
我需要完成的任务(所以你对我想要实现的目标有一些背景)是这样的:"Write a program that will create 100 random integer numbers, both negative and positive between -10 and +10 (in a for loop) and then determine how many were positive and how many were negative. Finally, print out how many numbers were positive and how many numbers were negative."
import random
positive = 0
negative = 0
for number in random.randrange(-10,10):
if number > 0:
positive += 1
else:
negative += 1
print ("End")
到目前为止,这是我的代码。如果有人可以帮助我使用上述信息和我的错误,那就太好了!
random.randrange(-10,10)
创建一个随机整数,它不会自动创建 100
个随机整数。因此,当您尝试执行 - for number in random.randrange(-10,10):
- 它会出错,因为您正在尝试迭代一个不应该可能的整数。
我建议遍历 range(100)
,然后将 random.randrange(-10,10)
放入循环中。例子-
for _ in range(100):
number = random.randrange(-10,10)
if number > 0:
positive += 1
else:
negative += 1
random.randrange()
是 returns 单个随机数的函数。您的代码出错了,因为您随后试图循环遍历该单个数字,就像它是可迭代的一样。
相反,您想生成一个随机数 100 次,因此您的 for 循环应该看起来像这样:
for i in range(100):
number = random.randrange(-10,10)
# do stuff with number...
random.randrange(-10,10)
returns range(-10,10)
中的随机数,不可迭代。 random.randrange(-10,10) for _ in range(100)
会为所欲为。此外,您永远不会打印出正数和负数。
我不断收到此错误: 类型错误:'int' 对象不可迭代。
我需要完成的任务(所以你对我想要实现的目标有一些背景)是这样的:"Write a program that will create 100 random integer numbers, both negative and positive between -10 and +10 (in a for loop) and then determine how many were positive and how many were negative. Finally, print out how many numbers were positive and how many numbers were negative."
import random
positive = 0
negative = 0
for number in random.randrange(-10,10):
if number > 0:
positive += 1
else:
negative += 1
print ("End")
到目前为止,这是我的代码。如果有人可以帮助我使用上述信息和我的错误,那就太好了!
random.randrange(-10,10)
创建一个随机整数,它不会自动创建 100
个随机整数。因此,当您尝试执行 - for number in random.randrange(-10,10):
- 它会出错,因为您正在尝试迭代一个不应该可能的整数。
我建议遍历 range(100)
,然后将 random.randrange(-10,10)
放入循环中。例子-
for _ in range(100):
number = random.randrange(-10,10)
if number > 0:
positive += 1
else:
negative += 1
random.randrange()
是 returns 单个随机数的函数。您的代码出错了,因为您随后试图循环遍历该单个数字,就像它是可迭代的一样。
相反,您想生成一个随机数 100 次,因此您的 for 循环应该看起来像这样:
for i in range(100):
number = random.randrange(-10,10)
# do stuff with number...
random.randrange(-10,10)
returns range(-10,10)
中的随机数,不可迭代。 random.randrange(-10,10) for _ in range(100)
会为所欲为。此外,您永远不会打印出正数和负数。