Это не тот формат, в котором находится ваш список. Python не читает списки таким образом.Есть несколько способов сделать это, но все они требуют или думать о вашем списке по-другому или форматировать это как что-то отличное от списка.Если вы хотите сохранить его в виде списка, вы можете сделать его списком списков:
A = [[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
[1, 2, 8, 3, 6, 4, 8, 9, 6, 10],
[2, 1, 1, 40, 1, 30, 40, 1, 1, 10],
[5, 9, 2, 7, 7, 3, 8, 10, 4, 7]]
Теперь вы можете ссылаться на подсписки по их индексу и вносить любые необходимые изменения:
for i in range(len(A[2])):
if A[2][i]==1:
A[2][i]=A[2][i-1]
print(A[2])
>>>[2, 2, 2, 40, 40, 30, 40, 40, 40, 10]
Вы также можете назвать список массивом, а не списком:
import numpy
A = numpy.array([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
[1, 2, 8, 3, 6, 4, 8, 9, 6, 10],
[2, 1, 1, 40, 1, 30, 40, 1, 1, 10],
[5, 9, 2, 7, 7, 3, 8, 10, 4, 7]])
for i in range(0,len(A[2])):
if A[2, i]==1:
A[2, i]=A[2, i-1]
print(A[2])
>>>[2, 2, 2, 40, 40, 30, 40, 40, 40, 10]
Или это может быть словарь:
A = {"d":[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
"x":[1, 2, 8, 3, 6, 4, 8, 9, 6, 10],
"y":[2, 1, 1, 40, 1, 30, 40, 1, 1, 10],
"z":[5, 9, 2, 7, 7, 3, 8, 10, 4, 7]}
for i in range(len(A["y"])):
if A["y"][i]==1:
A["y"][i]=A["y"][i-1]
print(A["y"])
>>>[2, 2, 2, 40, 40, 30, 40, 40, 40, 10]
Python немного слабеесо структурами данных по сравнению с другими языками, поэтому их легко запутать в самом начале, так как python позволит вам много делать, не зная полностью, какой тип данных вы используете, но, в общем, вы всегда должны учитывать свои данныевведите и синтаксические соглашения, стоящие за ним, прежде чем пытаться структурировать ваши данные таким образом.