1. 程式人生 > >Python運行的方式

Python運行的方式

python模塊 否則 保存 來看 執行 col 假設 path環境變量 兩種

Python的運行方式多種多樣,下面列舉幾種:

交互式

在命令行中輸入python,然後在>>>提示符後面輸入Python語句,這裏需要註意:

1 語句前面不能有空格,否則會報錯

2 對於符合語句,前面會有...提示符,結束符合語句的方法是按下Enter鍵

命令行運行文件

以命令行運行文件有兩種形式:

1 將文件保存為.py,然後在命令行用python 文件名.py的方式運行

2 將文件當成shell腳本,以運行shell的方式運行,此時在文件第一行,需要寫#!/usr/bin/python,用來告訴使用Python來運行下面的命令,但是為了可移植性,即#!後面不要寫死python的目錄(因為不同的機器,可能python所在的目錄不一樣),可以使用#!/usr/bin/evn python代替,evn會自動搜尋Python解析器的位置,在大多數Unix的shell中,搜尋的路徑通常就是PATH環境變量中指定的目錄

import語句

import語句導入Python模塊(所謂模塊,簡單來看,就是.py結尾的Python文件)時,會將這個模塊的語句執行一遍,因此,也可以使用import來執行Python命令,但是import在一個Python運行周期裏面,對於同一個文件只會導入一次,也就是說也只會執行一次。

reload函數

reload函數可以對已經被import導入的文件執行多次(沒有被導入的文件無法用reload執行),因此,reload也可以執行文件:

#假設script.py已經被導入過
from imp import reload
reload(script)

需要註意的是:

1 reload在Python2.X中是內置函數,但是是在Python3.X中,被移動到了imp模塊裏面

2 沒有被import的模塊,reload無法執行,上面已經提及

3 reload不具有傳遞性,即reload只會reload script.py本身,對於script.py內部import的模塊,reload不會執行

exec函數

可以使用exec來執行Python文件:

exec(open("script.py").read())

需要註意的是:

1 exec的作用就好比把script.py文件的內容粘貼到這條語句的位置,然後執行,這樣帶來的壞處就是,可能會有變量覆蓋的風險

2 在Python2.X中,還包括execfile("script.py")和exec(open("script.py"))的形式,但是,這兩種形式在Python3.X中都不支持

Python運行的方式