【发布时间】:2020-03-11 09:38:48
【问题描述】:
我尝试了以下代码:
print("Entered tuple :",tup)
for x in tup :
val=(x,)
count=0
for y in tup :
if(x==y):
count+=1
temp=(x,count)
freq+=(temp,)
print("\nPrinting tuple in (tuple element,frequency) format : \n")
print(freq)
上述代码的实际输出:
Entered tuple : ('1', '2', '3', '4', '1')
Printing tuple in (tuple element,frequency) format element :
(('1', 2), ('2', 1), ('3', 1), ('4', 1), ('1', 2))
在元组中,1重复2次,在结果中也显示2次,但在结果中只显示一次。
预期输出是:
Entered tuple : ('1', '2', '3', '4', '1')
Printing tuple in (tuple element,frequency) format element :
(('1', 2), ('2', 1), ('3', 1), ('4', 1))
【问题讨论】:
-
你可以使用
Counter(tup)(我确定这是重复的..) -
tuple(Counter(('1', '2', '3', '4', '1')).items()) -
谢谢@Sayse。得到了预期的:)
-
为什么要“不使用任何列表概念”?那究竟是什么意思?
标签: python tuples concatenation word-frequency