Это плохая практика? - PullRequest
       5

Это плохая практика?

0 голосов
/ 11 августа 2011

В этом фрагменте кода, если я сопоставляю заданный шаблон в строке, я заменяю строку на самосозданную строку. Это на самом деле хорошая практика? Это немного похоже на повторное использование строки переменной для вывода, где оно фактически содержит содержимое текущей прочитанной строки.

for line in lines:
  match = re.search(r'@Table\(name = "(.*)"\)', line)

  if match:
    line = "".join(['@Table (name = "', prefix, match.group(1)[:max_len], '")', '\n'])

  f.write(line)

f.close()

1 Ответ

3 голосов
/ 11 августа 2011

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

for line in lines:
    match = re.search(r'@Table\(name = "(.*)"\)', line)

    if match:
        output_line = "".join(['@Table (name = "', prefix, match.group(1)[:max_len], '")', '\n'])
    else:
        output_line = line

    f.write(output_line)

f.close()

Таким образом, каждое имя переменной все время точно описывает ее содержимое.

...