繁体   English   中英

我的 python output 打印了两次,而我希望它打印一次

[英]My python output is printing out twice and while I want it to print out once

所以,我有这个:

nums = []
N = 5
for n in range(N):
    numbers = int(input('Please enter an integer: '))
    nums.append(numbers)
avg = sum(nums)/5
print(f"The average is:", avg )

for v in nums:
    if v > avg:
        print("The numbers greater than the average are:\n", (v))

输出如下内容:

请输入 integer: 5

请输入 integer: 4

请输入 integer: 9

请输入 integer: 7

请输入 integer: 2

平均值为:5.4

大于平均值的数字是:9

大于平均值的数字是:7


但是我想知道是否有人知道如何让底部显示如下:

大于平均值的数字是:

9 7

尝试这个

nums = []
N = 5
for n in range(N):
    numbers = int(input('Please enter an integer: '))
    nums.append(numbers)
avg = sum(nums)/5
print(f"The average is:", avg )

g =[]
for v in nums:
    if v > avg:
        g.append(v)
print("The numbers greater than the average are:\n", *g)

Output

Please enter an integer: 5
Please enter an integer: 4
Please enter an integer: 9
Please enter an integer: 7
Please enter an integer: 2
The average is: 5.4
The numbers greater than the average are:
 9 7

而不是代码的最后一部分使用:

print("The numbers greater than the average are:")

for v in nums:
    if v > avg:
        print(v, end=" ")

您可以按如下方式使用列表推导:

...
avg = sum(nums)/5

...

print("The numbers greater than the average are:\n", *[i for i in nums if i > avg])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM