#python
Вопрос:
У меня проблема с печатью строки с номером. Как добавить нумерацию перед строкой? Я прокомментировал, в какой части.
f = open('filename', "r") lines = f.readlines() for line in lines: synonyms = [] print(line) # I want my interface to be, 1. word 2. word, and so on answer = input("Answer: ").lower() for syn in wordnet.synsets(line.strip()): for l in syn.lemmas(): synonyms.append(l.name())
Мой код просто печатается
слово 1
Ответ:
слово 2
Ответ:
Мой идеальный код-это:
1.слово 1
Ответ:
2.слово 2
Ответ:
Ответ №1:
замените свою петлю:
for i, line in enumerate(lines): print(str(i 1) '. ' str(line))
«я» будет номером, которого ждали…
вы можете использовать интерполяцию строк, если вы находитесь на минимальном python3.6
print(f'{i 1}. {line}')
Комментарии:
1. куда мне его положить? под петлей для?
2. @AbbieB Нет, вам следует изменить существующий цикл for для использования
enumerate()
, как показано здесь.
Ответ №2:
Вместо того, чтобы проходить через каждую строку в lines
списке, просто просмотрите индексы каждого элемента , а затем распечатайте index 1
, поскольку очевидно, что индексы списка начинаются с 0, но мы хотим, чтобы наша нумерация начиналась с 1. Итак, вместо того, чтобы печатать только строку, мы напечатаем line_no: line
f = open('filename', "r") lines = f.readlines() for line_no in range(len(lines)): synonyms = [] print(f"{line_no 1}: {lines[line_no]}") # I want my interface to be, 1. word 2. word, and so on answer = input("Answer: ").lower() for syn in wordnet.synsets(line.strip()): for l in syn.lemmas(): synonyms.append(l.name())
Надеюсь, мой ответ помог 😀
Ответ №3:
Попробуй это:
f = open('filename', "r") lines = f.readlines() for line_no,line in enumerate(lines): synonyms = [] print(str(line_no 1) '.' line) # I want my interface to be, 1. word 2. word, and so on answer = input("Answer: ").lower() for syn in wordnet.synsets(line.strip()): for l in syn.lemmas(): synonyms.append(l.name())
Ответ №4:
Добавьте вызываемую переменную count
и увеличивайте ее с каждой итерацией for
цикла. Код:
count = 1 f = open('filename', "r") lines = f.readlines() for line in lines: synonyms = [] print(str(count) ". " line) count = 1 answer = input("Answer: ").lower() for syn in wordnet.synsets(line.strip()): for l in syn.lemmas(): synonyms.append(l.name())