Я изучаю C++ сейчас, поэтому я обычно сравниваю C++ с Python. Я нашел, что список на C++ настолько отличается от Python. Например, когда я определяю «»-структуру, а затем создать список из них, я хотел бы использовать этот код:Как создать список классов в Python
struct foo exm[3]
Это будет создать список, который содержит 3 элементов обув, и я могу инициализировать элемент если я хочу. Я могу использовать exm [i] для индексации списка, и это единственный способ, которым я могу использовать элемент, эти элементы анонимны, я думаю.
Как я могу добиться такого же прогресса в Python? Я думаю, что я должен создать новый «класс», чтобы определить ту же «структуру» на C++. Но как насчет списка? Проблема в том, что я должен создать явный элемент и добавить его в список позже. Как быстро создать этот список? С другой стороны, как я могу создать список, содержащий новый анонимный объект класса?
Возможно, это глупый вопрос и без какой-либо практики, мне просто интересно. Большое спасибо.
В Python список представляет собой контейнер, который не заботится о его содержании. Вы можете «инициализировать» свой список со списком: [exm() for _ in xrange (3)] – Schore
Вы не объявляете списки с ожидаемыми значениями типа так же, как на языках C/C++/Java/других языках. Таким образом, Python не заботится о типах. На самом деле списки Python являются гетерогенными и могут содержать много типов. '[1, 'apple', {'pear': True}, False]' является допустимым списком в Python. –
Я также буду рекомендовать против того, что @Schore сказал (извините), потому что предварительная инициализация списка на Python - это ИМО, очень плохая практика. Вы должны создать список, а затем вызвать 'append' или' extend' по мере необходимости. –