Python程序的相關(guān)執(zhí)行方案的詳細(xì)介紹
本文主要是以跟蹤一個(gè)比較簡單的Python程序的相關(guān)執(zhí)行,來簡單的討論關(guān)于Python的實(shí)現(xiàn)基本框架與結(jié)構(gòu)的一些相關(guān)內(nèi)容的介紹。以下就是Python程序的執(zhí)行 的相關(guān)實(shí)際操作方案的具體應(yīng)用。
要執(zhí)行Python程序如下,功能非常簡單:從1加到10再打印出來
- # test program
- sum = 0
- for i in range(1, 11):
- sumsum = sum + i
- print sum
如果想要在Windows下面用VS 2005調(diào)試Python,可以通過下面步驟設(shè)置:把Startup Project設(shè)置成Python,這樣就可以直接通過F5來啟動(dòng)Python 右鍵單擊Python這個(gè)Project,選擇Properties。在對(duì)話框中的
- Configuration Properties->Debugging
下面,把Command Arguments設(shè)置為-d test.py。其中test.py就是我們所要調(diào)試程序的名字。-d表示打開調(diào)試開關(guān),可以看到額外的調(diào)試信息。
好了,設(shè)置完畢之后可以直接按下F10來單步追蹤該程序的執(zhí)行了。
首先,F(xiàn)10,啟動(dòng)程序,可以看到Python的main函數(shù)中沒有什么內(nèi)容,只是簡單的調(diào)用Py_Main。Py_Main顧名思義自然是主函數(shù)了,分幾大部分:
分析命令行和環(huán)境變量
調(diào)用Py_Initialize初始化
根據(jù)命令行的內(nèi)容執(zhí)行進(jìn)入不同的執(zhí)行模式
- if (command) {
- sts = PyRun_SimpleStringFlags(command, &cf) != 0;
- free(command);
- } else if (module) {
- sts = RunModule(module);
- free(module);
- }
- else {
- if (filename == NULL && stdin_is_interactive) {
- RunStartupFile(&cf);
- }
- /* XXX */
- sts = PyRun_AnyFileExFlags(
- fp,
- filename == NULL ? "<stdin>" : filename,
- filename != NULL, &cf) != 0;
- }
以上就是對(duì)一個(gè)簡單的Python程序的執(zhí)行過程的相關(guān)內(nèi)容的介紹,忘你會(huì)有所收獲。
【編輯推薦】