Найти - Пользователи
Полная версия: Как инициализировать список списков?
Начало » Python для новичков » Как инициализировать список списков?
1 2
PooH
Zubchick
О_о'
а чем так не нравится? [] * 9
In [10]: ls = [[]] * 9

In [11]: ls
Out[11]: [[], [], [], [], [], [], [], [], []]

In [12]: ls[0].append(1)

In [13]: ls
Out[13]: [[1], [1], [1], [1], [1], [1], [1], [1], [1]]
Ed
Вот, кстати, неплохая пища для размышлений по поводу реализации графов в Python: http://wiki.python.org/moin/PythonGraphApi
alexx11
Ed
Вот, кстати, неплохая пища для размышлений по поводу реализации графов в Python: http://wiki.python.org/moin/PythonGraphApi
Спасибо гляну, но у меня такая задача что граф, очень компактненько в такой словарик помещается, т.е. любое дополнение уже излишний наворот.

P.S. А как лучше строки в питоне складывать? (“лучше” читай быстрее)
P.P.S.: Сам нашёл
This optimization is both version and implementation dependent. For performance sensitive code, it is preferable to use the str.join() method which assures consistent linear concatenation performance across versions and implementations.
Ed
P.S. А как лучше строки в питоне складывать? (“лучше” читай быстрее)
Глядя на ваш код возникает вопрос ‘а нужно ли их вообще складывать?’. В чем необходимость прибавления ‘value: ’ ко всем ключам? Если это делается только для того, чтобы отличить проинициализированные ключи от других, то наверняка найдутся менее затратные способы это сделать, чем использование явно небыстрого сложения строк.
bw
Попробуй для инициализации использовать izip, imap и repeat, возможно удастся выиграть немного.

..bw
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB