Как изменить определенный индекс строки - PullRequest
0 голосов
/ 13 июня 2019
a=(["id': 'tl_00'}"], ["index': '9',"], ["resp': '1110000000001111',"], ["fors': '1110000000001111'}"])

Я хочу создать новый список, чтобы удалить все}

a=a=(["id': 'tl_00'}"], ["index': '9',"], ["resp': '1110000000001111',"], ["fors': '1110000000001111'}"])
b=""
for i in range(len(a)):
    for j in range(len(a[i])):
        for k in range(len(a[i][j])):
            b+=a[i][j][k]
            if a[i][j][k]=="}":
                b[i][j][k]+=""

Ошибка: индекс списка находится вне диапазона. Есть ли лучший способ сделать это?

Ответы [ 2 ]

1 голос
/ 13 июня 2019

Использование str.strip()

Пример:

a=(["id': 'tl_00'}"], ["index': '9',"], ["resp': '1110000000001111',"], ["fors': '1110000000001111'}"])
b=[[k.strip("}") for k in sublist] for sublist in a]
print(b)

Выход:

[["id': 'tl_00'"],
 ["index': '9',"],
 ["resp': '1110000000001111',"],
 ["fors': '1110000000001111'"]]
0 голосов
/ 13 июня 2019

Думаю, я бы добавил альтернативу, которая ближе к вашему исходному коду:

a=(["id': 'tl_00'}"], ["index': '9',"], ["resp': '1110000000001111',"], ["fors': '1110000000001111'}"])
b=[]
for i in range(len(a)):
   b+=[[]]
   for j in range(len(a[i])):
      b[i]+=[""]
      for k in range(len(a[i][j])):
         if a[i][j][k]!="}":
            b[i][j] += a[i][j][k]
print(b)
...