Добавить номер в конец списка? - PullRequest
0 голосов
/ 09 сентября 2018

Мне нужно удалить второй элемент во втором подсписке, а затем добавить число 500 в конец второго подсписка. Список:

list = [[100,200],[300,400]]

конечный результат должен быть:

list = [[100,200],[300,500]]

Есть ли способ сделать это без выполнения следующих действий:

del list[1]
list.append([300,500])

Я попробовал это, но он вернул ошибку индекса:

list[1][1]=500

и вот так:

list.insert(([1][1]),500)

Спасибо!

Ответы [ 4 ]

0 голосов
/ 09 сентября 2018

ИЛИ ниже, (выполнит последний элемент любой последовательности длины):

>>> list = [[100,200],[300,400]]
>>> list[-1][-1]=500
>>> list
[[100,200],[300,500]]

Кстати, смотрите также это изображение:

enter image description here

Также см .:

 +---+---+---+---+---+---+
 | P | y | t | h | o | n |
 +---+---+---+---+---+---+
   0   1   2   3   4   5 
  -6  -5  -4  -3  -2  -1
0 голосов
/ 09 сентября 2018

Вам не нужно ничего удалять, просто переназначить. Это типичная схема программирования.

list = [[100,200],[300,400]]
list[1][1] = 500
print(list)

выходы

[[100,200],[300,500]]

по желанию.

Кстати, list - это встроенный Python. Лучше вызвать переменную lst или что-то в этом роде.

0 голосов
/ 09 сентября 2018

как упомянуто @James и @Matt,

>>> list[1][1] = 500 
[[100, 200], [300, 500]]

перезапишет ваши данные, как и ожидалось.

Но если по какой-то причине вы хотите удалить и добавить данные (вместо перезаписи):

>>> list = [[100,200],[300,400]]
>>> list[1].pop()
[[100, 200], [300]]
>>> list[1].append(500)
[[100, 200], [300, 500]]
0 голосов
/ 09 сентября 2018

Если элемент уже существует, вы можете просто перезаписать его:

mylist = [[100,200],[300,400]]  
mylilst[1][1] = 500
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...