Если вы хотите сделать что-либо еще во время итерации, может быть полезно получить как индекс (который гарантирует вам возможность ссылаться на него, например, если у вас есть список dicts), так и фактическое содержимое элемента списка.
inlist = [{'field1':10, 'field2':20}, {'field1':30, 'field2':15}]
for idx, i in enumerate(inlist):
do some stuff with i['field1']
if somecondition:
xlist.append(idx)
for i in reversed(xlist): del inlist[i]
enumerate
дает вам доступ к элементу и индексу за один раз. reversed
так, чтобы индексы, которые вы собираетесь удалить позже, не изменяются на вас.
На самом деле это не оператор. Это просто расширение строки - он сообщает препроцессору, что текст замены #define
продолжается в следующей строке файла.
Проверьте # 3 в этой ссылке :
Продолжающиеся строки объединены в одну длинную строку. Продолжаемая строка - это строка, заканчивающаяся обратным слэшем,
blockquote>\
. Обратная косая черта удаляется, и следующая строка соединяется с текущей.
\
в конце строки является продолжением строки . Он сообщает препроцессору игнорировать новую строку и рассматривает следующую строку как часть этого 1.
Сравните с символом продолжения строки VBScript _
.