Как вы разделяете строку внутри списка? - PullRequest
2 голосов
/ 21 апреля 2020

Я получил этот тип строк внутри списка:

[['AAAA-BBBBBBB-10.00.00.0', 'AAAAAAAA', '00:00:00:00:00:00', '000', 'BBBBBBB', 'AAAAA:00'], [

, когда я экспортирую этот список в csv, строки внутри запятых (,) находятся в разных ячейках, но 'AAAA-BBBBBBB-10.00.00.0' все в одной ячейке , Я хотел, чтобы это выглядело так:

[['AAAA-BBBBBBB','10.00.00.0', 'AAAAAAAA', '00:00:00:00:00:00', '000', 'BBBBBBB', 'AAAAA:00'], [

, поэтому при экспорте в CSV-файл строки 'AAAA-BBBBBBB','10.00.00.0' будут находиться в 2 разных ячейках. Я попытался:

dp1 = [d.replace("-1"," 1").split() for d in data]

, но это не работает, кажется, его игнорируют!

1 Ответ

2 голосов
/ 21 апреля 2020

Вы можете перечислить элементы внешнего списка, изменить состав 1-го элемента внутреннего списка и вернуть его обратно в ваш внешний список:

data = [['AAAA-BBBBBBB-10.00.00.0', 'AAAAAAAA', '00:00:00:00:00:00', 
         '000', 'BBBBBBB', 'AAAAA:00'],
        []] 

for idx, d in enumerate(data):
    if d:
        orig = d[0].replace("-1"," 1").split()  # create a 2 part list
        d = orig + d[1:]                        # use list slicing
    data[idx] = d                               # assign it back to your big list

print(data)

Вывод:

[['AAAA-BBBBBBB', '10.00.00.0', 'AAAAAAAA', '00:00:00:00:00:00', 
  '000', 'BBBBBBB', 'AAAAA:00'], 
 []]
...