[英]How do I print values only when they appear more than once in a list in python
[英]If the largest number occurs more than once in the same list, how do I print them all out?
这是我的程序,
empty_list = []
max_no = 0
for i in range(5):
input_no = int(input("Enter a number: "))
empty_list.append(input_no)
for x in empty_list:
if x > max_no:
max_no = x
high = empty_list.index(max_no)
print ([empty_list[high]])
示例列表: [4, 3, 6, 9, 9]
示例 output: [9]
如何更改我的程序以打印出同一列表中出现的最大数量的所有实例?
预期 output: [9, 9]
为了找到最大的数,可以使用 Python 内置 function max()
max_no = max(empty_list)
为了计算它们,您可以使用count()
方法,如下所示:
count_no = empty.count(max_no)
您可以存储该数字的最大数量和出现次数。
empty_list = []
max_no = 0
times = 0
for i in range(5):
input_no = int(input("Enter a number: "))
empty_list.append(input_no)
for x in empty_list:
if x > max_no:
max_no = x
times = 1;
elif x == max_no:
times += 1
print([max_no] * times)
你在问,给定一个整数列表,你想要一个 function
返回具有最大 integer N 次的列表,其中 N 是
给定列表中的出现次数。
def foo(lst):
r = max(lst) # find maximum integer in the list
d = lst.count(r) # find how many times it occurs in the list
return [r for i in range(d)] # create a list with the max int N number of times.
lst = [1,1,1,1,5,5,9]
print(foo(lst)) # prints [9]
lst = [1,1,1,1,5,5]
print(foo(lst)) # prints [5,5]
lst = [4, 3, 6, 9, 9]
print(foo(lst)) # prints [9,9]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.