Я пытаюсь понять синтаксис преобразования для циклов для перечисления понятий.
Я понимаю самые основы, которые будут:
[expression **for** item **in** list **if** conditional]
Однако у меня есть цикл for, который сохраняет значение в промежуточной переменной. Я новичок в Python, поэтому с моей стороны это может быть неаккуратное кодирование:
for n in wf:
if n == 'Table of Contents':
continue
name = wf[n].iloc[1,2]
store_list.append(name)
Я не уверен, как сохранить переменную name
в понимании списка. Нужно ли хранить его? Есть ли лучший способ кодировать это?
store_list1=[]
store_list1 = [name = wf[n].iloc[1,2], store_list1.append(name) for n in wf if not == 'Table of Contents']
Приведенный выше код возвращает синтаксическую ошибку на знаке равенства... Может ли кто-нибудь объяснить мне, можно ли закодировать этот конкретный цикл в качестве понимания списка? Заранее спасибо,
Попробуй это
store_list1 = [wf[n].iloc[1,2] for n in wf if n != 'Table of Contents']
Из контекста, добавленного в комментарии, wf
является dict. Поэтому дважды не смотрите вверх по ключу - вместо этого вы хотите перебирать парами элементы wf
:
store_list = [v.iloc[1,2] for k, v in wf.items() if k != 'Table of Contents']
wf
в Словаре? Чтоn
будет?None
в качестве аргумента для sheet_name = ... n, возвращает ячейку, содержащую строку с именем магазина.