日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > python >内容正文

python

简明Python3教程 16.标准库

發(fā)布時(shí)間:2023/12/10 python 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 简明Python3教程 16.标准库 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

簡(jiǎn)介

python標(biāo)準(zhǔn)庫(kù)作為python標(biāo)準(zhǔn)安裝的一部分,其自身包含數(shù)量龐大的實(shí)用模塊,

因此熟悉python標(biāo)準(zhǔn)庫(kù)非常重要,因?yàn)楹芏鄦?wèn)題都能利用python標(biāo)準(zhǔn)庫(kù)快速解決。

下面我們將研究標(biāo)準(zhǔn)庫(kù)中的一些常用模塊。完整的標(biāo)準(zhǔn)庫(kù)模塊列表可以在安裝python時(shí)附帶的文檔中的’Library Reference’一節(jié)找到。

現(xiàn)在就讓我們來(lái)看看這些模塊吧。

?

提示

如果你感覺(jué)本章內(nèi)容對(duì)于你過(guò)于超前,那么可以跳過(guò)本章。但是當(dāng)你熟悉python編程后我強(qiáng)烈建議你把這章補(bǔ)上。

?

sys模塊

sys模塊包含一些系統(tǒng)相關(guān)的功能。先前我們已經(jīng)見(jiàn)識(shí)過(guò)sys.argv列表,它包括命令行參數(shù)。

假設(shè)我們想要檢查所使用的python命令行的版本,比方說(shuō)我們需要確定正在使用的版本不低于3。

諸如此類(lèi)的功能正是sys模塊所提供的。

>>> import sys

>>> sys.version_info

(3, 0, 0, 'beta', 2)

>>> sys.version_info[0] >= 3

True

代碼如何工作:

sys模塊含有一個(gè)version_info元組用于提供版本信息。其第一個(gè)元素為主版本。

因此我們可以通過(guò)檢查它確保程序只會(huì)運(yùn)行在python 3.0和3.0以上:

#!/usr/bin/python

# Filename: versioncheck.py

import sys, warnings

if sys.version_info[0] < 3:

??? warnings.warn("Need Python 3.0 for this program to run",

??????? RuntimeWarning)

else:

??? print('Proceed as normal')

輸出:

??? $ python2.5 versioncheck.py

??? versioncheck.py:6: RuntimeWarning: Need Python 3.0 for this program to run

????? RuntimeWarning)

???

??? $ python3 versioncheck.py

??? Proceed as normal

代碼如何工作:

這里我們使用標(biāo)準(zhǔn)庫(kù)中另一個(gè)名為warnings的模塊,用于向最終用戶顯示警告信息。

如果python版本號(hào)小于3,則顯示相應(yīng)的警告。

?

loggin模塊

如果你希望得到存儲(chǔ)在某處的重要信息或調(diào)試信息,以便檢查程序是否如期運(yùn)行時(shí)該咋辦呢?你如何將這些信息存儲(chǔ)在某處呢?

這些可以通過(guò)logging模塊做到。

#!/usr/bin/python

# Filename: use_logging.py

import os, platform, logging

if platform.platform().startswith('Windows'):

??? logging_file = os.path.join(os.getenv('HOMEDRIVE'),

os.getenv('HOMEPATH'), 'test.log')

else:

??? logging_file = os.path.join(os.getenv('HOME'), 'test.log')

logging.basicConfig(

??? level=logging.DEBUG,

??? format='%(asctime)s : %(levelname)s : %(message)s',

??? filename = logging_file,

??? filemode = 'w',

)

logging.debug("Start of the program")

logging.info("Doing something")

logging.warning("Dying now")

輸出:

??? $python use_logging.py

??? Logging to C:/Users/swaroop/test.log

If we check the contents of test.log, it will look something like this:

??? 2008-09-03 13:18:16,233 : DEBUG : Start of the program

??? 2008-09-03 13:18:16,233 : INFO : Doing something

??? 2008-09-03 13:18:16,233 : WARNING : Dying now

代碼如何工作:

我們使用了3個(gè)標(biāo)準(zhǔn)庫(kù)模塊 – os模塊與系統(tǒng)交互,platform模塊取得平臺(tái)信息,即操作系統(tǒng)信息。而logging模塊用于記錄日志信息。

首先,我們通過(guò)platform.platform(詳見(jiàn)import platform; help(platform))返回的字符串檢測(cè)操作系統(tǒng)類(lèi)型。

如果為windows系統(tǒng),則分別計(jì)算出主驅(qū)動(dòng)器,主目錄與文件名,這個(gè)文件用于存儲(chǔ)相關(guān)信息。然后將這三部分合并得到文件的全路徑。

對(duì)于其他平臺(tái),我們只需得到用戶的主目錄就能計(jì)算出文件的全路徑了。

我們之所以沒(méi)有簡(jiǎn)單的使用字符串連接合并這三部分而是利用os.path.join,原因在于這個(gè)特殊的函數(shù)可以確保路徑格式符合特定系統(tǒng)的規(guī)范。

之后我們配置logging模塊,指示在我們指定的文件中以特殊的格式寫(xiě)入所有信息。

最后,我們就能寫(xiě)入信息了,它們可以是調(diào)試信息,警告信息甚至是危機(jī)信息(critical messages)。

一但程序開(kāi)始運(yùn)行,我們就可以檢查這個(gè)文件以了解程序發(fā)生了什么,而用戶并不會(huì)看到這些信息。

?

urllibjson模塊

如果我們讓自己編寫(xiě)的程序在web上獲得搜索結(jié)果是不是很有趣呢?我們現(xiàn)在就來(lái)研究下。

這個(gè)功能可以通過(guò)少量模塊實(shí)現(xiàn)。第一urllib模塊使得我們可以訪問(wèn)internet上的任何網(wǎng)頁(yè)。

這里我們準(zhǔn)備利用雅虎搜索獲得搜索結(jié)果,它恰好以一種被稱(chēng)作JSON的格式為我們提供搜索結(jié)果。

這種格式分析起很方便,因?yàn)槲覀兪褂玫氖菢?biāo)準(zhǔn)庫(kù)中的內(nèi)建json模塊。

#!/usr/bin/python

# Filename: yahoo_search.py

import sys

if sys.version_info[0] != 3:

??? sys.exit('This program needs Python 3.0')

import json

import urllib, urllib.parse, urllib.request, urllib.response

# Get your own APP ID at http://developer.yahoo.com/wsregapp/

YAHOO_APP_ID =

'jl22psvV34HELWhdfUJbfDQzlJ2B57KFS_qs4I8D0Wz5U5_yCI1Awv8.lBSfPhwr'

SEARCH_BASE =

'http://search.yahooapis.com/WebSearchService/V1/webSearch'

class YahooSearchError(Exception):

??? pass

# Taken from http://developer.yahoo.com/python/python-json.html

def search(query, results=20, start=1, **kwargs):

??? kwargs.update({

??????? 'appid': YAHOO_APP_ID,

??????? 'query': query,

??????? 'results': results,

??????? 'start': start,

??????? 'output': 'json'

??? })

??? url = SEARCH_BASE + '?' + urllib.parse.urlencode(kwargs)

??? result = json.load(urllib.request.urlopen(url))

??? if 'Error' in result:

??????? raise YahooSearchError(result['Error'])

??? return result['ResultSet']

query = input('What do you want to search for? ')

for result in search(query)['Result']:

??? print("{0} : {1}".format(result['Title'], result['Url']))

代碼如何工作:

(注:這個(gè)例子目前有錯(cuò)誤,暫且跳過(guò))

?

Module of the Week系列

標(biāo)準(zhǔn)庫(kù)中還有更多內(nèi)容有待探索,例如debug(http://docs.python.org/dev/library/pdb.html),

處理命令行選項(xiàng)(http://docs.python.org/py3k/library/getopt.html),

正則表達(dá)式(http://www.diveintopython.org/regular_expressions/index.html)等等。

而進(jìn)一步研究標(biāo)準(zhǔn)庫(kù)的最好辦法就是閱讀Python Module of the Week系列了(http://www.doughellmann.com/projects/PyMOTW/)。

?

小結(jié)

我們已經(jīng)探索了許多標(biāo)準(zhǔn)庫(kù)模塊中的功能。強(qiáng)烈推薦瀏覽python標(biāo)準(zhǔn)庫(kù)文檔以便對(duì)所有模塊有個(gè)概念性的認(rèn)識(shí)(http://docs.python.org/py3k/library/)

接下來(lái),我們將概覽python的方方面面讓我們的python之旅更加完整

?

?

?

--------------Python書(shū)籍推薦----------------- Python基礎(chǔ)教程-第2版.修訂版? 購(gòu)買(mǎi)地址1? 購(gòu)買(mǎi)地址2 PYTHON核心編程 購(gòu)買(mǎi)地址1??購(gòu)買(mǎi)地址2 零基礎(chǔ)學(xué)Python 購(gòu)買(mǎi)地址1??購(gòu)買(mǎi)地址2

轉(zhuǎn)載于:https://www.cnblogs.com/txw1958/archive/2012/12/10/A_Byte_of_Python3_Standard_Library.html

總結(jié)

以上是生活随笔為你收集整理的简明Python3教程 16.标准库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: free性欧美69巨大 | 成人福利在线看 | 性免费视频 | 97av在线 | 色就色欧美 | 色吊丝中文字幕 | 日韩狠狠操 | 欧美人交a欧美精品 | 亚洲污视频| 欧美日韩伊人 | 日日日插插插 | 国产一级片免费观看 | 99riav国产精品 | 午夜在线精品偷拍 | 人人91 | 欧美一区二区三区精品 | 一本亚洲| 婷婷激情小说网 | 无码aⅴ精品一区二区三区 精品久久在线 | 日日摸日日添日日碰9学生露脸 | 五月天精品 | 中文字幕视频在线观看 | 射死你天天日 | 国产精品国产一区二区三区四区 | 色妞网| 久久久123| 婷婷射丁香 | 国产精品久久久久久久久免费桃花 | 无码人妻一区二区三区免费 | 日韩wwww| 欧美18—19性高清hd4k | 欧美男人亚洲天堂 | 91色片| 97中文字幕 | 里番精品3d一二三区 | 日韩视频在线一区 | 中文在线а√在线 | 碧蓝之海动漫在线观看免费高清 | 男人的天堂中文字幕 | 九九九网站 | 三上悠亚在线一区二区 | 亚洲av日韩av永久无码下载 | 综合网色 | 日本一区二区欧美 | 国产传媒视频在线观看 | 国产在线视频资源 | 欧美狂猛xxxxx乱大交3 | 国产女人高潮视频 | 麻豆视频传媒入口 | 特黄特色大片免费 | 美女黄污网站 | caopeng在线视频 | 涩涩五月天 | 欧美成人a视频 | 日韩伦人妻无码 | 欧美激情不卡 | 欧美成人乱码一二三四区免费 | 在线免费福利视频 | 少妇免费看 | 一区二区三区 中文字幕 | 伊人影院99| 国产丝袜第一页 | 长篇高h肉爽文丝袜 | 蜜臀久久精品久久久用户群体 | 国产精品女同一区二区 | 日本久操| www.性欧美| 91黄色在线视频 | 午夜在线你懂的 | 免费无码肉片在线观看 | 手机在线看永久av片免费 | 亚洲黄色网页 | 91精品国产综合久久香蕉922 | 九九精品网 | 91大奶 | 精品黑人一区二区三区久久 | 国产伦精品一区 | 久久人人澡 | 日本www网站 | 强公把我次次高潮hd | xxxx日韩| 黄色短视频在线播放 | 国产美女无遮挡免费视频 | 亚洲国产成人一区 | 久久久久久成人 | 999视频在线 | 国产黄视频在线观看 | 国内精品久久久久久久久久 | 法国伦理少妇愉情 | 亚洲欧美日韩图片 | 韩日一级片 | 欧美淫视频 | 中文在线中文资源 | 日韩美女性生活 | 久久久久亚洲精品中文字幕 | 在线观看你懂的网站 | 欧美另类一区二区 | 欧美精品一区二区三 | 色xxxx|