黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

Python3.8技術(shù)手冊(cè)

系統(tǒng) 2034 0

使用Python解釋器

1.1 Python安裝

從源碼編譯安裝python
./configure
make
make test
sudo make install
默認(rèn)python解釋器安裝在/usr/local/bin/python3.8,可以將/usr/local/bin放到path搜索路徑中。
在windows系統(tǒng)上,python一般安裝在C:\Python38,在windows 命令行中,執(zhí)行命令set path=%path%;C:\python38 將該路徑添加到path搜索路徑。

1.2 使用解釋器

            
              在類(lèi)linux系統(tǒng)中,在console控制臺(tái)輸入python3.8 即可運(yùn)行,退出CTL+D(文件結(jié)束符)或者

            
          

quit()

            
              在windows系統(tǒng)上,打開(kāi)命令行輸入python即可運(yùn)行,退出CTL+Z(文件結(jié)束符)或者quit()

            
          

解釋器的行編輯功能也包括交互式編輯,在支持 readline 的系統(tǒng)中,可以回看歷史命令,也有 Tab 代碼補(bǔ)全功能。檢查是否支持行編輯功能,在出現(xiàn)提示符后,CTL+P。如果
有‘嗶’的一聲或者出現(xiàn)一行字符串(如下圖),那么就是支持行編輯功能;

如果什么都沒(méi)出現(xiàn)或者顯示^P 那么不支持行編輯。只能用Backspace退格鍵從當(dāng)前行刪除字符。

python [-bBdEhiIOqsSuvVWx?] [-c command | -m module-name | script | - ] [args]
python -h 可以查看幫助信息

在標(biāo)準(zhǔn)輸入tty設(shè)備調(diào)用解釋器,他能交互式地讀取和執(zhí)行命令,調(diào)用時(shí)如果提供文件名作參數(shù)或者有文件重定向到標(biāo)準(zhǔn)輸入,他會(huì)讀取和執(zhí)行文件中的腳本。
python xxx.py --直接運(yùn)行的方式啟動(dòng)(此時(shí)腳本__name__為" main ")

如果用python -c command [arg] … 調(diào)用,則執(zhí)行命令command。由于 Python 代碼中經(jīng)常會(huì)包含對(duì)終端來(lái)說(shuō)比較特殊的字符,通常情況下都建議用英文單引號(hào)把 command 括起來(lái)。
這里的command是python 自己的command,不是linux的。

Python -m module [arg] …會(huì)執(zhí)行module的源文件,這把python模塊當(dāng)作腳本使用。
python -m xxx.py --以模塊的方式啟動(dòng)(此時(shí)腳本的__name__屬性值依然不再是" main "而是"xxx")

在運(yùn)行腳本的時(shí)候,有時(shí)可能也會(huì)需要在運(yùn)行后進(jìn)入交互模式。這種時(shí)候在文件參數(shù)前,加上選項(xiàng) -i 就可以了。

1.2.1 傳入?yún)?shù)

解釋器會(huì)讀取命令行參數(shù),轉(zhuǎn)化為字符串列表存入 sys 模塊中的 argv 變量中。執(zhí)行命令 import sys 你可以導(dǎo)入這個(gè)模塊并訪問(wèn)這個(gè)列表。這個(gè)列表最少也會(huì)有一個(gè)元素;如果沒(méi)有給定輸入?yún)?shù),sys.argv[0]就是個(gè)空字符串。如果腳本名是標(biāo)準(zhǔn)輸入,sys.argv[0] 就是 ‘-’。使用 -c command 時(shí),sys.argv[0] 就會(huì)是 ‘-c’。如果使用選項(xiàng) -m module,sys.argv[0] 就是包含目錄的模塊全名。在 -c command 或 -m module 之后的選項(xiàng)不會(huì)被解釋器處理,而會(huì)直接留在 sys.argv 中給命令或模塊來(lái)處理。

cat module.py
#! /usr/bin/env python

- - coding: UTF-8 - -

import sys

print(sys.path)
print(sys.modules)
print(sys.argv[0], sys.argv[1])

通過(guò)以上執(zhí)行方式發(fā)現(xiàn):
第一種方法——直接運(yùn)行腳本,當(dāng)前腳本所在的路徑會(huì)加入到 sys.path 列表中,但是 sys.modules 字典中的 __main__的路徑不是絕對(duì)路徑,只是腳本名稱(chēng)。
第二種方法——當(dāng)做模塊方式運(yùn)行,當(dāng)前腳本所在的路徑不會(huì)加入到 sys.path 列表中,但是 sys.modules 字典中的 main 的路徑是絕對(duì)路徑,同時(shí),還引入了 runpy 和 pkgutil 兩個(gè)模塊。
runpy 的用途:定位并執(zhí)行該模塊。主要用途在于實(shí)現(xiàn)命令行 -m 執(zhí)行 python 模塊的效果。
pkgutil 的用途:獲取包里面的所有模塊列表。pkgutil.get_data() 可讀取包內(nèi)任何文件內(nèi)容。

Python模塊的導(dǎo)入機(jī)制:
要理解模塊的導(dǎo)入機(jī)制,得理解幾個(gè)關(guān)鍵的名詞。sys.path -> sys.modules -> < module >. dict
sys.path:是一個(gè)列表。保存著模塊的搜索路徑。如果路徑?jīng)]有存在與該列表中,可使用 sys.path.append() 導(dǎo)入。
sys.modules: 是一個(gè)字典。所有加載到內(nèi)存中的模塊都存放在該字典中。當(dāng) import 一個(gè)模塊的時(shí)候,首先會(huì)在這個(gè)字典中查找是否已經(jīng)加載了目標(biāo)模塊。如果已加載,則將模塊的名字加入到正在調(diào)用 import 的模塊的 Local 命名空間(也就是< module >. dict )中。如果沒(méi)有,則從 sys.path 查找,找到后載入內(nèi)存,并加入到 sys.modules 字典,名稱(chēng)也將導(dǎo)入到當(dāng)前模塊的 Local 命名空間。

1.2.2 交互模式

在終端(tty)輸入并執(zhí)行指令時(shí),解釋器是運(yùn)行在 交互模式(interactive mode)。在這種模式中,它會(huì)顯示 主提示符(primary prompt),提示輸入下一條指令,通常用三個(gè)大于號(hào)(>>>)表示;連續(xù)輸入行的時(shí)候,它會(huì)顯示 次要提示符,默認(rèn)是三個(gè)點(diǎn)(…)。

1.2.3 解釋器的運(yùn)行環(huán)境(編碼格式)

源碼文件的字符編碼。
默認(rèn)情況下,Python 源碼文件以 UTF-8 編碼方式處理。在這種編碼方式中,世界上大多數(shù)語(yǔ)言的字符都可以同時(shí)用于字符串字面值、變量或函數(shù)名稱(chēng)以及注釋中——盡管標(biāo)準(zhǔn)庫(kù)中只用常規(guī)的 ASCII 字符作為變量或函數(shù)名,而且任何可移植的代碼都應(yīng)該遵守此約定。要正確顯示這些字符,你的編輯器必須能識(shí)別 UTF-8 編碼,而且必須使用能支持打開(kāi)的文件中所有字符的字體。
如果不使用默認(rèn)編碼,要聲明文件所使用的編碼,文件的 第一 行要寫(xiě)成特殊的注釋。

- - coding: encoding - -

Encoding可以是python支持的任意一種codecs。
關(guān)于 第一行 規(guī)則的一種例外情況是,源碼以 UNIX “shebang” 行 開(kāi)頭。這種情況下,編碼聲明就要寫(xiě)在文件的第二行。例如:
#!/usr/bin/env python3

- - coding: cp1252 - -


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論