LIst Computing: References to Components

В итоге: мне нужно написать понимание списка, в котором я буду ссылаться на список, который создается с помощью понимания списка.

Возможно, это не то, что вам нужно делать каждый день, но я тоже не думаю, что это необычно.

Возможно, здесь нет ответа, но все же, пожалуйста, не говорите мне, что мне следует использовать для цикла . Это может быть правильно, но бесполезно. Причина в проблемной области: эта строка кода является частью модуля ETL, поэтому важна производительность, а также необходимость избегать создания временного контейнера - поэтому я хочу закодировать этот шаг в аккредитиве. Если бы здесь у меня работал цикл, я бы просто написал его.

В любом случае, я не могу написать это конкретное понимание списка. Причина: выражение, которое мне нужно написать, имеет следующую форму:

[ some_function(s) for s in raw_data if s not in this_list ]

В этом псевдокоде «this_list» относится к списку, созданному путем оценки понимания этого списка. И вот почему я чтобы дать этому списку в стадии разработки имя? я так думаю

  • , что временное имя, вероятно, занято из некоторого связанного метода, используемого для построения мой список ("сумма"?)

  • , но даже если я приложу усилия, чтобы найдите этот связанный метод и предполагая что это действительно временное имя используется интерпретатором Python для обратитесь к списку, пока он находится под строительство, я почти уверен, что ты не может ссылаться на связанные методы прямо; я не знаю о таком явное правило, но эти методы (в по крайней мере те немногие, что у меня есть на самом деле посмотрел) недопустимый питон синтаксис. Я предполагаю одну причину, почему так, чтобы мы не записывали их в наш код.

  • , так что это цепь моих так называемых рассуждений, которая привела меня к выводу или, по крайней мере, к предположению, что я загнал себя в угол. Тем не менее, я подумал, что должен проверить это с сообществом, прежде чем развернуться и пойти в другом направлении.

    8
    задан doug 20 February 2011 в 10:35
    поделиться