что является точкой входа в исходный код Python - PullRequest
0 голосов
/ 06 июня 2018

я пытаюсь понять, как работает python.Итак, я взял форк официального репозитория Python, который доступен по адресу Ссылка .Я начинающий программист.но я понимаю, что главное - это точка входа в приложение.Поскольку python написан на c, c++, для которого main является точкой входа, любой может мне помочь, какой файл имеет функцию main.Итак, когда я запускаю python.exe, какая функция сначала выполняется, принимая все аргументы командной строки?

ПРИМЕЧАНИЕ : я не запрашиваю точку входа в программу Python.Я знаю, что компилятор только начинает выполнять построчно.Что я хочу знать, так это то, что когда мы запускаем код, функция которого в исходном коде Python фактически берет весь код Python, интерпретирует его и дает результат.

Ответы [ 2 ]

0 голосов
/ 06 июня 2018

Полагаю, это этот файл , который вы ищете:

/* Minimal main program -- everything is loaded from the library */

#include "Python.h"

#ifdef MS_WINDOWS
int
wmain(int argc, wchar_t **argv)
{
    return Py_Main(argc, argv);
}
#else
int
main(int argc, char **argv)
{
    return _Py_UnixMain(argc, argv);
}
#endif
0 голосов
/ 06 июня 2018

Это в файле Programs/python.c.https://github.com/python/cpython/blob/master/Programs/python.c

Как видите, единственное, что он делает, это вызывает другую функцию, которую вы можете найти здесь.https://github.com/python/cpython/blob/master/Modules/main.c

Код, который анализирует аргументы командной строки:найти ссылки.

...