У меня есть следующий код внутри функции Python:Как избежать переопределения функции (PEP8 ошибки F811)
strings = ('TIRS10', 'TIRS11')
if any(string in fields for string in strings):
def transform(row):
'''
Transform an input row in to a named tuple, then feed it in to a
dictionary.
'''
# split row in elements
elements = row.split('|')
# key: 1st column, replace
key = replace_dot_comma_space(elements[0])
# namedtuple
ect = namedtuple(key, [fields[0], fields[1]])
# feed namedtuples
ect.TIRS10 = is_number(elements[1])
ect.TIRS11 = is_number(elements[2])
# feed dictionary
dictionary[key] = dictionary.get(key, ect)
strings = ('b0', 'b1', 'b2', 'b3', 'b4', 'b5', 'b6', 'b7')
if any(string in fields for string in strings):
def transform(row):
'''
Transform an input row in to a named tuple, then feed it in to a
dictionary.
'''
# split row in elements
elements = row.split('|')
# key: 1st column, replace
key = replace_dot_comma_space(elements[0])
# *** small modification for the CWV field ***
fields[0] = 'cwv'
# named tuples
cwv = namedtuple(key,
[replace_dot_comma_space(fields[0]),
replace_dot_comma_space(fields[1]),
replace_dot_comma_space(fields[2]),
replace_dot_comma_space(fields[3]),
replace_dot_comma_space(fields[4]),
replace_dot_comma_space(fields[5]),
replace_dot_comma_space(fields[6]),
replace_dot_comma_space(fields[7]),
replace_dot_comma_space(fields[8]),
replace_dot_comma_space(fields[9])])
# feed named tuples
cwv.subrange = to_tuple(elements[1])
cwv.b0 = is_number(elements[2])
cwv.b1 = is_number(elements[3])
cwv.b2 = is_number(elements[4])
cwv.b3 = is_number(elements[5])
cwv.b4 = is_number(elements[6])
cwv.b5 = is_number(elements[7])
cwv.b6 = is_number(elements[8])
cwv.b7 = is_number(elements[9])
cwv.rmse = is_number(elements[10])
dictionary[key] = dictionary.get(key, cwv) # feed dictionary
map(transform, rows)
return dictionary
и я получаю за это, переопределением неиспользуемого «преобразование» из строки xxx [F811]. Как я могу решить эту «ошибку», чтобы не использовать две разные функции, но только одну, позже внутри одной и той же функции? Каков правильный подход к такому случаю?
Я думаю, что что-то не так с вашим форматированием. Должны ли последние две строки быть выделенными из одного блока? –
Да, спасибо, что поймали его. –
Этот вопрос больше подходит для StackOverflow. –