擅长:python、mysql、java
<p>您的代码当前只是遍历输入字符串,并将逗号与其他字符分隔到不同的列表中。我不认为那是你想要的。好像你想把相似的房间分组。您可以使用<a href="https://docs.python.org/3/library/collections.html#collections.defaultdict" rel="nofollow noreferrer">^{<cd1>}</a>来实现:</p>
<pre><code>from collections import defaultdict
s = "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"
# Split rooms from 'Hotel_Rooms'
_, rooms = s.split(':')
# Group rooms into dictionary
room_dict = defaultdict(list)
for room in rooms.strip().split(','):
room_dict[room].append(room)
print(list(room_dict.values()))
# [['R15', 'R15'], ['R11'], ['R5', 'R5', 'R5', 'R5'], ['R4', 'R4', 'R4', 'R4'], ['R8', 'R8'], ['R2', 'R2', 'R2', 'R2'], ['R3', 'R3', 'R3', 'R3'], ['R6', 'R6', 'R6', 'R6'], ['R1', 'R1', 'R1', 'R1']]
</code></pre>