我有一个像这样的字符串:
"Hotel_Rooms: R15,R11,R5,R4,R8,R2,R15,R3,R6,R1,R6,R5,R3,R2,R4,R1,R2,R5,R1,R4,R3,R6,R8,R4,R3,R1,R5,R6,R2"
我正在尝试列出相同的列表。这是我的代码:
List = []
ls = []
for el in input:
if el == 'Hotel_Rooms: ':
pass
else:
if el !=',':
ls.extend(el)
else:
List.append(ls)
print List
但是结果很奇怪。你能告诉我如何改进我的代码吗?
谢谢
最佳答案
尝试使用collections.Counter ,如下:
from collections import Counter
text= "Hotel_Rooms: R15,R11,R5,R4,R8,R2,R15,R3,R6,R1,R6,R5,R3,R2,R4,R1,R2,R5,R1,R4,R3,R6,R8,R4,R3,R1,R5,R6,R2"
C = Counter(text.split('Hotel_Rooms: ')[1].split(','))
print [[k,]*v for k,v in C.items()]
关于python - 如何对一堆字符串的元素进行分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53868208/