【发布时间】:2017-05-23 00:41:14
【问题描述】:
我正在学习 Python 课程,我们的教授希望我们编写一个程序,提示用户重复输入一个整数,直到他们输入 0。然后,让程序忽略所有负数(如果有),并显示偶数个数、奇数个数、偶数和、奇数和、正整数个数。
我一直在尝试并尝试将这个程序分成小部分。但是,我总是最终陷入困境。我现在已经重新开始了大约 5 次,如果有人能指出我正确的方向,我将不胜感激。
到目前为止,我有这个:
num_str = input("Input an integer (0 terminates):")
num_int=int(num_str)
even_count=0
odd_count=0
even_sum=0
odd_sum=0
while num_int !=0:
num_str = input("Input an integer (0 terminates):")
num_int=int(num_str)
for num_int in num_str:
if num_int%2 == 0:
even_count += 1
else:
odd_count +=1
print("")
print("Sum of odds:", odd_sum)
print("Sum of evens:", even_sum)
print("Even count:", even_count)
print("Odd count:", odd_count)
print("Total positive int count:")
我知道这并不多,我错过了很多,但我只是写了我知道到目前为止需要包含的内容。我一直卡住,因为程序一直给我错误。非常感谢任何形式的帮助,因为我真的不知道从哪里开始!
【问题讨论】:
-
您遇到了哪些错误/意外行为?
-
如果 num_int % 2 == 0 时显示“TypeError:并非所有参数都在字符串格式化期间转换”
-
为什么会有额外的 for 循环?取出那条线(并将缩进移回)。 for 循环只是将
num_int重新定义回字符串。 -
@NouraAsrar 不要忘记选择最适合您要求的答案。
标签: python python-3.x