Вопросы с тегом 'list-comprehension'

Синтаксическая конструкция, которая обеспечивает сжатый способ создания списков в стиле, подобном нотации математического набора-построителя. Поскольку несколько языков поддерживают списки, используйте этот тег в сочетании с тегом языка программирования.
13

Создать словарь с пониманием списка

Мне нравится синтаксис понимания списка Python. Можно ли его использовать для создания словарей? Например, путем итерации по парам ключей и значений: mydict = {(k,v) for (k,v) in blah blah blah} # doesn't work
17 нояб. '09 в 10:07
8

если/еще в понимании списка?

Как я могу сделать следующее в Python? row = [unicode(x.strip()) for x in row if x is not None else ''] По существу: замените все Nones пустыми строками, а затем выполнить функцию.
23 нояб. '10 в 19:56
11

Понимание списка против карты

Есть ли причина предпочесть использовать map() для понимания списка или наоборот? Является ли каждый из них более эффективным или считается более питоническим, чем другой?
07 авг. '09 в 23:43
6

Создать список одного элемента, повторяющегося n раз в Python

Я знаю, что понимание списка сделает это, но мне было интересно, существует ли еще более короткий (и более Pythonic?) подход. Я хочу создать серию списков с различной длиной. Каждый список будет содержать один и тот же элемент e, повторяющийся n раз...
11 авг. '10 в 14:01
23

Сглаживание мелкого списка в Python

Есть ли простой способ сгладить список итераций с пониманием списка или, если не считать этого, что бы вы считали лучшим способом сгладить мелкий список, подобный этому, балансируя производительность и читаемость? Я попытался сгладить такой список с...
02 янв. '09 в 5:40
9

Выражения генератора и понимание списков

Когда вы должны использовать выражения генератора, и когда следует использовать методы списка в Python? # Generator expression (x*2 for x in range(256)) # List comprehension [x*2 for x in range(256)]
06 сент. '08 в 20:07
8

Python Словарь Понимание

Можно ли создать понимание словаря в Python (для ключей)? Без понимания списков вы можете использовать что-то вроде этого: l = [] for n in range(1, 11): l.append(n) Мы можем сократить это до понимания списка: l = [n for n in range(1, 11)]. ...
24 янв. '13 в 17:51
8

если еще в понимании списка

У меня есть список l: l = [22, 13, 45, 50, 98, 69, 43, 44, 1] Для чисел выше 45 включительно, я хотел бы добавить 1; и для чисел, меньших его, 5. Я пробовал [x+1 for x in l if x >= 45 else x+5] Но это дает мне синтаксическую ошибку. Как я ...
10 дек. '10 в 6:45
11

Почему в Python нет понимания кортежа?

Как мы все знаем, есть список понимания, например [i for i in [1, 2, 3, 4]] и есть понимание словаря, например {i:j for i, j in {1: 'a', 2: 'b'}.items()} но (i for i in (1, 2, 3)) закончится в генераторе, а не в значении tuple. Почему это?...
05 июн. '13 в 12:44
8

Двойная итерация в понимании списка

В Python вы можете иметь несколько итераторов в понимании списка, например [(x,y) for x in a for y in b] для некоторых подходящих последовательностей a и b. Я знаю семантику вложенных циклов в представлениях списка Python. Мой вопрос: может ли од...
29 июл. '09 в 8:30
12

Понимание списка во вложенном списке?

У меня есть этот вложенный список: l = [['40', '20', '10', '30'], ['20', '20', '20', '20', '20', '30', '20'], ['30', '20', '30', '50', '10', '30', '20', '20', '20'], ['100', '100'], ['100', '100', '100', '100', '100'], ['100', '100', '100', '100']] ...
06 авг. '13 в 6:02
2

Как распаковать список кортежей в отдельные списки?

Возможный дубликат: Функция Transpose/Unzip в Python У меня есть список кортежей, где я хочу разархивировать этот список на два независимых списка. Я ищу некоторую стандартизованную операцию в Python. >>> l = [(1,2), (3,4), (8,9)] &g...
19 окт. '12 в 12:38
6

Можно ли использовать "еще" в понимании списка?

Вот код, который я пытался превратить в понимание списка: table = '' for index in xrange(256): if index in ords_to_keep: table += chr(index) else: table += replace_with Есть ли способ добавить выражение else к этому пониман...
01 июн. '10 в 16:57
2

Самый быстрый способ преобразования итератора в список

Имея объект iterator, есть ли что-то более быстрое, лучшее или более правильное, чем понимание списка, чтобы получить список объектов, возвращаемых итератором? user_list = [user for user in user_iterator]
24 сент. '10 в 20:45
6

Самый эффективный способ Python выбрать самую длинную строку в списке?

У меня есть список переменной длины, и я пытаюсь найти способ проверить, является ли элемент списка, который в настоящее время оценивается, самой длинной строкой, содержащейся в списке. И я использую Python 2.6.1 Например: mylist = ['123','123456',...
16 мая '09 в 21:15