2016-05-24 3 views
3

Здравствуйте, я новичок в Python и Stackoverflow, поэтому, пожалуйста, несите меня. Я только недавно обнаружил понимание списков и хотел «перепроектировать» конкретный код, чтобы лучше понять его. Другими слова, как бы следующий вид кода в обычном формате блок:Python Reverse Engineer List Comprehensions

return [variable[i:i+10] for i in range(0,100,10)] 
+2

http://treyhunner.com/2015/12/python-list-comprehensions-now-in-color/ –

ответ

5

http://treyhunner.com/2015/12/python-list-comprehensions-now-in-color/ является большим ресурсом, но в целом, постижения в Python имеют вида:

<expression> for <value> in <iterable> [if <criteria>] 

Так нарушение из вашего примера, мы имеем:

  • выражение: variable[i:i+10]
  • значение i не
  • в Iterable range(0,100,10)
  • нет критериев

"расширенная" форма:

result = [] 
for <value> in <iterable>: 
    [if <criteria>:] 
     result.append(<value>) 

(генератор, ДИКТ и установить постижения все похожи)

Так отрывая Например, мы получаем:

result = [] 
for i in range(0,100,10): 
    result.append(variable[i:i+10]) 
return result 
+0

Спасибо вам большое! – Lenko

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