這14種常用Python模組,你需知道的幾大模組! - 程式人生
文章推薦指數: 80 %
想做Python開發,這14種常用Python模組,你需知道 ... 元組(struct_time)共九個元素。
由於Python的time模組實現主要呼叫C庫,所以各個平臺可能有所不同。
程式人生>>想做Python開發,這14種常用Python模組,你需知道的幾大模組!
想做Python開發,這14種常用Python模組,你需知道的幾大模組!
阿新••發佈:2018-11-07
一、模組介紹
1.定義:
模組:本質就是.py結尾的python檔案(檔名:test.py,對應的模組名:test)
用來從邏輯上組織python程式碼(變數,函式,類,邏輯:實現一個功能)
更多幹貨分享加python程式語言學習QQ群515267276
2.語法:
import語句
當直譯器遇到import語句,如果模組在當前的搜尋路徑就會被匯入。
搜尋路徑是一個直譯器會先進行搜尋的所有目錄的列表。
匯入模組:
呼叫符號:
From…import語句
Python的from語句讓你從模組中匯入一個指定的部分到當前名稱空間中。
語法如下:
From…import*語句
把一個模組的所有內容全都匯入到當前的名稱空間也是可行的,只需使用如下宣告:
這提供了一個簡單的方法來匯入一個模組中的所有專案。
慎用from…import*。
import和from的區別:
import匯入使用時,加字首module.func()。
相當於把模組程式碼放在當前檔案中執行一遍。
from可以指定需要的函式或變數匯入。
匯入模組和當前py檔案都有同一個函式,呼叫會呼叫哪一個?
因為python是解釋型,所以後面覆蓋前面。
from…import…as…
3.import本質
import本質:
匯入一個模組本質就是解釋執行一個python檔案
匯入一個包本質就是解釋該包下的__init__.py檔案
__init__.py
包:本質就是一個目錄(必須帶有一個__init__.py檔案),用來從邏輯上組織模組
匯入包,怎麼匯入?
匯入包的本質:執行包下面的__init__.py檔案
匯入包下的模組
包下面的模組,這樣呼叫是錯誤的
在__init__.py內容中匯入模組
4、路徑搜尋和搜尋路徑
上面提到的都是匯入同級目錄下的模組,如果不在同一個目錄下:
importmodule_name實際找module_name.py檔案,是檔案就一定要有路徑。
匯入模組就是:找到.py檔案的位置,把它執行一遍,從哪裡找呢?sys.path.
#以上可見:sys.path是一個列表
#裡面的''指的當前路徑,這是為何查詢模組先從當前目錄查詢的原因
os.path.abspath(__file__)#當前檔案絕對路
os.path.dirname(os.path.abspath(__file__))#獲取目錄名
sys.path.append():追加到最後
#所以:可以如下,動態新增路徑到第一
sys.path.insert
5.匯入優化
6.阻止屬性匯入
如果你不想讓某個模組屬性被“frommoduleimport*”匯入,那麼你可以給你不想匯入的屬性名稱加上一個下劃線(_)。
不過如果你匯入了整個模組或是你顯式地匯入某個屬性這個隱藏資料的方法就不起作用了。
二、模組的分類
a:標準庫
b:開源模組-第三方模組
c:自定義模組
三、常用內建模組
1、os模組
用於提供系統級別的操作
2、time和datetime
在Python中,通常有這幾種方式來表示時間:
時間戳
格式化的時間字串
元組(struct_time)共九個元素。
由於Python的time模組實現主要呼叫C庫,所以各個平臺可能有所不同。
UTC(CoordinatedUniversalTime,世界協調時)亦即格林威治天文時間,世界標準時間。
在中國為UTC+8。
DST(DaylightSavingTime)即夏令時。
時間戳(timestamp)的方式:通常來說,時間戳表示的是從1970年1月1日00:00:00開始按秒計算的偏移量。
我們執行“type(time.time())”,返回的是float型別。
返回時間戳方式的函式主要有time(),clock()等。
元組(struct_time)方式:struct_time元組共有9個元素,返回struct_time的函式主要有gmtime(),localtime(),strptime()。
時間轉為時間戳
格式化時間字串
轉化時間戳和元組到時間字串
時間加減
更多幹貨分享加python程式語言學習QQ群515267276
3、random模組
4、sys模組
5、shutil模組
高階的檔案、資料夾、拷貝、壓縮包等處理模組
6、ConfigParser
用於對特定的配置進行操作,當前模組的名稱在python3.x版本中變更為configparser。
來看一個好多軟體的常見文件格式如下
如果想用python生成一個這樣的文件怎麼做呢?
•生成
•讀取出來
•configparser增刪改查語法
7、hashlib模組
用於加密相關的操作,3.x裡代替了md5模組和sha模組,主要提供SHA1,SHA224,SHA256,SHA384,SHA512,MD5演算法,hash加密都是bytes型別
python還有一個hmac模組,它內部對我們建立key和內容再進行處理然後再加密
8、Subprocess模組
呼叫subprocess.run(…)是推薦的常用方法,在大多數情況下能滿足需求,但如果你可能需要進行一些複雜的與系統的互動的話,你還可以用subprocess.Popen(),語法如下:
可用引數:
args:shell命令,可以是字串或者序列型別(如:list,元組)
bufsize:指定緩衝。
0無緩衝,1行緩衝,其他緩衝區大小,負值系統緩衝
stdin,stdout,stderr:分別表示程式的標準輸入、輸出、錯誤控制代碼
preexec_fn:只在Unix平臺下有效,用於指定一個可執行物件(callableobject),它將在子程序執行之前被呼叫
close_sfs:在windows平臺下,如果close_fds被設定為True,則新建立的子程序將不會繼承父程序的輸入、輸出、錯誤管道。
所以不能將close_fds設定為True同時重定向子程序的標準輸入、輸出與錯誤(stdin,stdout,stderr)。
shell:同上
cwd:用於設定子程序的當前目錄
env:用於指定子程序的環境變數。
如果env=None,子程序的環境變數將從父程序中繼承。
universal_newlines:不同系統的換行符不同,True->同意使用
startupinfo與createionflags只在windows下有效將被傳遞給底層的CreateProcess()函式,用於設定子程序的一些屬性,如:主視窗的外觀,程序的優先順序等等
終端輸入的命令分為兩種:
•輸入即可得到輸出,如:ifconfig
•輸入進行某環境,依賴再輸入,如:python
需要互動的命令示例
9、re-正則表示式模組
常用正則表示式符號
最常用的匹配語法
分組匹配和group()、groups()、groupdict()
更多幹貨分享加python程式語言學習QQ群515267276
10、logging模組
python的logging模組提供了標準的日誌介面,你可以通過它儲存各種格式的日誌,logging的日誌可以分為debug(),info(),warning(),error()andcritical()5個級別,下面我們看一下怎麼用。
最簡單用法
看一下這幾個日誌級別分別代表什麼意思
如果想把日誌寫到檔案裡,也很簡單
其中下面這句中的level=loggin.INFO意思是,把日誌紀錄級別設定為INFO,也就是說,只有比日誌是INFO或比INFO級別更高的日誌才會被紀錄到檔案裡,在這個例子,第一條日誌是不會被紀錄的,如果希望紀錄debug的日誌,那把日誌級別改成DEBUG就行了。
如果想同時把log列印在螢幕和檔案日誌裡,就需要了解一點複雜的知識了
11、json和pickle資料序列化
streval
資料序列化
json只能處理簡單的,所有語言通用的,函式不能json序列化
pickle可以序列化python所有的資料型別
12、shelve模組
shelve模組是一個簡單的k,v將記憶體資料通過檔案持久化的模組,可以持久化任何pickle可支援的python資料格式
13、xml處理模組
xml是實現不同語言或程式之間進行資料交換的協議,跟json差不多,但json使用起來更簡單,json之前的交換方式
14、PyYAML模組
更多幹貨分享加python程式語言學習QQ群515267276
Python也可以很容易的處理ymal文件格式,只不過需要安裝一個模組
Python三大神器!你會幾個?我三個都會!
«上一篇
手把手教你用幾行Python和消費資料做客戶細分下一篇»
相關推薦
想做Python開發,這14種常用Python模組,你需知道的幾大模組!
一、模組介紹
1.定義:
模組:本質就是.py結尾的python檔案(檔名:test.py,對應的...
Sublimetext3搭建Python開發環境及常用外掛安裝
一、環境準備
1、官方網站地址
2、Windows10
3、SublimeText3+官網購買license(Justasuggestion...
Java開發中三種常用集合
開發中常用的三種集合
1. Java.util包中List介面
List是有序集合(也稱為序列)。
使用者可以精確控制...
說一說Web開發中兩種常用的分層架構及其對應的程式碼模型
昨天妹子讓我幫她解決個問題,本以為可以輕鬆搞定,但是開啟他們專案的一瞬間,我頭皮發麻。
本身功能不多的一個小專案,解決方案裡竟然有幾十個類庫。
僅僅搞明白各個類庫的...
python編程(python開發的三種運行模式)【轉】
阻塞datatail驗證目錄pro什麽readbus轉自:http://blog.csdn.net/fei...
《做Java開發這一年》---看.net和Java的對比
從去年到現在,從.NET轉向Java開發(只是因為專案原因,絕對與平臺好壞沒有關係)差不多有一年的時間了。
通過這一年時間也有些感觸,想從幾個面比較一下這兩個平...
Python開發基礎----異常處理、socket套接字基礎1
括號return提示傳輸層initandprotbackvision異常處理
錯誤
程序裏的錯誤一般分為兩...
python開發(第二篇):初始python
登陸文件windows==delpwdkeyword入門用c語言實現
erPython的種類:
Cpy...
Python開發環境(3):使用Eclipse+PyDev插件創建Django項目
ffffffpostgresq項目上線右鍵ontpatiatngsoraOS:Windows10家庭中文...
成為數據開發工程師?常用的幾種大數據架構剖析你都掌握了嗎?
音頻方案概念手工bdd切片包含著lap大文件數據分析工作雖然隱藏在業務系統背後,但是具有非常重要的作用,數...
搜尋
基礎教學
Mysql入門
Sql入門
Android入門
Docker入門
Go語言入門
Ruby程式入門
Python入門
Python進階
Django入門
Python爬蟲入門
最近訪問
想做Python開發,這14種常用Python模組,你需知道的幾大模組!
java.lang.OutOfMemoryError:+Java+heap+space解決方法
教你用RPC漏洞入侵併打造完美后門
面試題-第二期-中高階測試工程師必備,月薪15K+
Centos5編譯kernel原始碼
Xorboot-UEFI新手入門教程
Timus+1104.+Don’t+Ask+Woman+about+Her+Age題解
php生成訂單號的解決方案
數字影象處理---通俗Canny邊緣檢測
objdump看核心原始碼
延伸文章資訊
- 1Python模組與使用,重複的事交給程式做【Python練習Day4】
模組(module),則會獨立存在另一個程式檔案,讓主程式可以載入使用。第四天練習Python模組,先說結論:最後失敗了,爬了很多雯還是不知道問題卡在哪。
- 2Python常用的模組和簡單用法 - IT145.com
Python常用的模組和簡單用法 · 1、random 隨機模組 · 2、matplotlab.pyplot 作圖模組 · 3、mpl_toolkits.mplot3d 繪製3D圖模組 ...
- 3Day05 - Python 常用模組-技術 - 拾貝文庫網
Day05 - Python 常用模組. ... 模組簡介. 模組就是一個儲存了Python 程式碼的檔案。模組能定義函式,類和變數。模組裡也能包含可執行的程式碼。 模組也是Python 物件,...
- 4Django筆記- Python的模組與套件 - dokelung's Blog
章節簡介模組與套件模組與匯入名稱空間(namespace) 匯入到頂層空間不安全的匯入套件第三方程式庫PyPI Python的套件管理程式-pip 常用套件簡...
- 5這14種常用Python模組,你需知道的幾大模組! - 程式人生
想做Python開發,這14種常用Python模組,你需知道 ... 元組(struct_time)共九個元素。 由於Python的time模組實現主要呼叫C庫,所以各個平臺可能有所不同。