У Google есть учебник по Python, и они описывают стандартный код как "неудачный" и предоставляют этот пример:
#!/usr/bin/python
# import modules used here -- sys is a very standard one
import sys
# Gather our code in a main() function
def main():
print 'Hello there', sys.argv[1]
# Command line args are in sys.argv[1], sys.argv[2] ..
# sys.argv[0] is the script name itself and can be ignored
# Standard boilerplate to call the main() function to begin
# the program.
if __name__ == '__main__':
main()
Теперь я слышал, как стандартный код описывается как «на первый взгляд повторяющийся код, который появляется снова и снова, чтобы получить какой-то результат, который кажется намного более простым» ( пример ).
В любом случае, в Python часть, рассматриваемая как «шаблонный» код приведенного выше примера, была:
if __name__ == '__main__':
main()
Теперь мои вопросы таковы:
1) Принимает ли шаблонный код в Python (как и в приведенном примере) то же определение, что и определение, которое я предоставил? Если так, то почему?
2) Этот код вообще необходим? Мне кажется, что код выполняется независимо от того, есть ли основной метод. Что делает использование этого кода лучше? Это даже лучше?
3) Почему мы используем этот код и какие услуги он предоставляет?
4) Это происходит по всему Python? Есть ли другие примеры «стандартного кода»?
О, и просто не по теме вопрос: вам нужно import sys
, чтобы использовать аргументы командной строки в Python? Как он обрабатывает такие аргументы, если его там нет?