Python 一个数中最常出现的数
目标是计算出长数字中最常见的数字。例如,213523432455555将返回5Python 一个数中最常出现的数,python,Python,目标是计算出长数字中最常见的数字。例如,213523432455555将返回5 print('Question 4') def most_frequent(number): analysisnumber=map(int,str(number)) returnvalue=[0,0,0,0,0,0,0,0,0,0] highest = 0 total2=0 for i in range(0,len(str(number))): returnvalue[analysisn
print('Question 4')
def most_frequent(number):
analysisnumber=map(int,str(number))
returnvalue=[0,0,0,0,0,0,0,0,0,0]
highest = 0
total2=0
for i in range(0,len(str(number))):
returnvalue[analysisnumber[i]] = list(map(i,analysisnumber))
for i in range(0,20):
if i < 10:
if returnvalue[i] > highest:
highest = returnvalue[i]
if i > 10:
if returnvalue[i-10] == highest:
total2+=highest
print("The most frequent number",end="")
if total2 > highest:
print("s are: ")
for i in range(0,10):
if returnvalue[i] == highest:
print(i)
else:
print(" is ", end="")
for i in range(0,10):
if returnvalue[i] == highest:
print(i)
break
number=int(input("Enter the number intended for analysis:"))
most_frequent(number)
错误。我希望能得到一些帮助 这就可以了,使用:
或者只需感谢@tobias_k:
>>> c.most_common(1)
[('2', 5)]
您使用的映射函数错误
returnvalue[analysisnumber[i]] = list(map(i,analysisnumber))
文档中要映射的第一个值是function:mapfunction,iterable
您为其提供了一个int i。请添加有关错误的额外信息。发生在哪一行?将有一些带有错误消息的行号信息。检查那里到底发生了什么。大概你是说十进制?数字就是数字。您选择如何表示它不是数字的一部分。2^2^2==10000(二进制),16(十进制),20(八进制),10(十六进制),等等。文件/Users/fizzhazlt/Documents/TEST3.py,第106行,在最频繁的数字文件/Users/fizzhazlt/Documents/TEST3.py,第85行,在最频繁的返回值[analysisnumber[i]=listmapi,analysisnumber TypeError:“int”对象不可调用这是否意味着我必须下载计数器,或者默认情况下它是pyton 3.4.3中的计数器?@Fizzhaz,它的python标准。出于某种原因,当我导入它时,它声称print'sdafas'的语法无效?而不是max,只需使用c.most_common1。@Fizzhaz,这很奇怪。。。。检查你的代码,搜索那个打印
>>> c.most_common(1)
[('2', 5)]
returnvalue[analysisnumber[i]] = list(map(i,analysisnumber))