У меня есть список:Как я могу разбить список на более мелкие списки?
lists = (['1','2','3','S','3','4','S','4','6','7'])
И я хочу, чтобы разбить список на S меньше список каждый раз, когда «S» появляется и устранить «S» во что-то вроде:
([['1','2','3'],['3','4],['4','6','7']])
Мой код:
def x (lists):
empty = ''
list = []
for x in lists:
if x == empty:
list[-1:].append(x)
else:
list.append([x])
return (list)
Я пробовал что-то вроде этого, но я совершенно новичок в python, и Im становится нигде. Ничего особенного, пожалуйста, как бы я исправить то, что у меня есть?
Привет, Спасибо за помощь! Тем не менее, этот ответ работает, однако, есть ли какие-либо решения относительно того, что у меня есть? Я не думаю, что я так далеко, и я предпочел бы придерживаться того, что я сейчас понимаю, так как я совершенно новый! – user1828072
'groupby()' является ключевым моментом здесь. Возможно, вам потребуется прочитать документ python. – kev
@ user1828072 Проблема с «исправлением того, что у вас уже есть» - это ваш подход. , , ну, не особенно пифонов. Это не значит (конечный результат), что ваш подход неправильный, менее предпочтительный и, вероятно, менее эффективный. – jpm