2011-12-16 4 views
1

Допустим, у меня есть этот список:позиции в списке. питон

lst = [[0], [0, 0], [0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0, 0]...] 

, как я могу добавить определенное количество для каждой ячейки в соответствии с его положением в списках для exapmle: Я хочу, чтобы добавить формулу в каждой ячейке по multipying 3 с позиции на позицию списка * в вложенном списке так что позволяет сказать, что вторая ячейка на третьем списке будет

      3*3*2 
(random number)*(the third nested list)*(second spot on that list) 

поэтому в конечном итоге список будет выглядеть (только для числа 3)

lst = [[3], [6, 12], [9, 18, 27], [12, 24, 36, 48], [15, 30, 45, 60, 75]...] 

В любом случае это всего лишь пример, и я прошу в основном о том, как применять определенную формулу, рассматривая позицию вложенного списка и внутренних ячеек в списке. Его трудно объяснить, поэтому я надеюсь, что это получилось достаточно ясно. спасибо.

+0

Я попытался с помощью 2 для петель один, чтобы перейти в большой список, а другой для вложенных списков я не могу получить правильный результат, что путь по какой-то причине – user1073865

ответ

5

Похож на работу для перечисления!

for i, sublist in enumerate(lst): 
    for j, elem in enumerate(sublist): 
     sublist[j] = 3*(i+1)*(j+1) 
+0

Это идеальный вариант! есть где угодно, я могу найти, как работает перечисление? – user1073865

+0

http://docs.python.org/release/3.0.1/library/functions.html#enumerate является отправной точкой. Это для python 3, но python 2 имеет аналогичную страницу –

Смежные вопросы