Я хочу создать список элементов, в котором каждый элемент может иметь более одной переменной. Я читал о dict, но там всего две переменные. Потом я подумал о классе. Однако я не уверен, как реализовать объект класса внутри списка. Я также хотел бы хранить данные в БД. Не могли бы вы объяснить, как реализовать эту логику в коде?
список элементов, содержащих более одной переменной в python
- Что не так со списком списков? И, кажется, здесь больше, чем один вопрос. 03.10.2014
- Я предполагаю, что то, что вы видите в
dict
, похоже на{"key" : "value"}
, так что это пара ключ-значение, но (скорее всего) не две переменные. 03.10.2014 - У вас также могут быть dicts dicts или списки dicts, но вместо этого вы можете использовать именованные кортежи. 03.10.2014
Ответы:
Есть несколько способов сделать это. Я пойду от простого к сложному.
- Многомерные массивы
Многомерный массив подобен массиву внутри массива, например:
Если бы мы хотели хранить домашних животных с их типом животных и возрастом
CODE:
multi-array = [["dog", 8], ["cat", 10]]
DanielsPet = multi-array[0]
print(DanielsPet[1])
RESULT:
8
Теперь, хотя это работает, вы должны попытаться запомнить числовое значение для всего (конечно, вы можете иметь «возраст = 1» и добавить его в DanielsPet[age])
- Несколько экземпляров классов
Теперь похоже, что вы не очень внимательно изучали классы, поэтому я буду краток с этим, дайте мне знать, если вам нужна дополнительная информация.
Шаги:
- создать класс
- поместить экземпляры этого класса в список
читать/редактировать экземпляры
#basic class class basic: def __init__(self, x, y): self.x = x self.y = y list = [basic(5, 10), basic(10, 20)] print (list[0].x, list[1].y) list[0].x = 15 print (list[0].x, list[1].y) RESULT: (5, 20) (15, 20)
Здесь мы можем хранить «экземпляры» класса, каждый из которых содержит свои собственные переменные, их можно легко изменить и перепечатать (list[0].x = 15)
Дайте мне знать, если вам нужна дополнительная помощь или вам нужен более конкретный пример.