kumaxim
@kumaxim
Web-программист

Что означает нижнее подчеркивание в качестве аргумента цикла?

Всем доброго времени суток
Изучаю Python 3.Х. Набиваю руку на hackerrank.com и codewars.com. Одно из заданий на первом сервисе - "Finding the percentage" - содержит следующий предопределенный код:
if __name__ == '__main__':
    n = int(input())
    student_marks = {}
    for _ in range(n):
        name, *line = input().split()
        scores = list(map(float, line))
        student_marks[name] = scores
    query_name = input()


Я силу не очень глубоких знаний в Python я не понимаю здесь две строчки:
  1. if __name__ == '__main__': - зачем это вообще надо? Код прекрасно проходит и из него.
  2. for _ in range(n): - нижнее подчеркивание в качестве имени переменной использовать невозможно(синтаксическая ошибка), однако, в заголовке цикла оно проходит нормально, но нигде дальше по коду не используется. Что оно означает в данном контексе?
  • Вопрос задан
  • 256 просмотров
Решения вопроса 1
@zexer
1. Конструкция, которая будет запускаться только при выполнении самого файла, без возможности выполнения извне.
https://ru.stackoverflow.com/questions/515852/%D0%...
2. Так делают тогда, когда цикл нужно повторить range(n) раз, а само значение не используется.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
  1. Чтобы при импорте не срабатывало
  2. Означает игнорируемую переменную
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы