Python基礎(chǔ)教程(微課版)ch08_第1頁
Python基礎(chǔ)教程(微課版)ch08_第2頁
Python基礎(chǔ)教程(微課版)ch08_第3頁
Python基礎(chǔ)教程(微課版)ch08_第4頁
Python基礎(chǔ)教程(微課版)ch08_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

第1頁第8章模塊本章概述本章的學(xué)習(xí)目標主要內(nèi)容第2頁本章概述Python提供了一種辦法,可以把這些定義存放在文件中,供一些腳本或交互式的解釋器實例使用,這種文件被稱為模塊。模塊是一種包含所有定義的函數(shù)和變量的文件,后綴名是.py。模塊可以被別的程序引入,以使用模塊中的函數(shù)等功能。這也是使用Python標準庫的方法。本章就來介紹Python模塊的定義及使用,以及Python常用的內(nèi)置模塊。第3頁本章的學(xué)習(xí)目標了解Python模塊的概念;掌握自定義模塊的方法;掌握模塊的導(dǎo)入和使用;理解Python中包的概念、結(jié)構(gòu)、創(chuàng)建、使用;了解Python中常用的內(nèi)置模塊,并掌握內(nèi)置模塊的使用方法;熟悉第三方模塊的下載、安裝和使用。第4頁主要內(nèi)容8.1模塊8.2模塊的高級技術(shù)8.3Python中的包8.4常用內(nèi)建模塊8.5本章實戰(zhàn)8.6本章小結(jié)第5頁8.1模塊標準模塊import語句搜索路徑from…import語句創(chuàng)建模塊安裝第三方模塊第6頁標準模塊Python本身帶著一些標準的模塊庫。這些組件會根據(jù)不同的操作系統(tǒng)進行不同形式的配置,比如winreg這個模塊就只會提供給Windows系統(tǒng)。Python有一個特別的模塊sys,內(nèi)置在每一個Python解析器中。下面是一個使用sys模塊的例子。#!/usr/bin/python3importsysprint('命令行參數(shù)如下:')foriinsys.argv:print(i)print('\n\nPython路徑為:',sys.path,'\n')第7頁import語句想使用Python源文件,只需在另一個源文件里執(zhí)行import語句,語法如下:importmodule1[,module2[,...moduleN]當(dāng)解釋器遇到import語句,如果模塊在當(dāng)前的搜索路徑就會被導(dǎo)入。第8頁搜索路徑搜索路徑是由一系列目錄名組成的,Python解釋器就依次從這些目錄中去尋找所引入的模塊。搜索路徑是在Python編譯或安裝的時候確定的,安裝新的庫應(yīng)該也會修改。搜索路徑被存儲在sys模塊中的path變量,例如,在交互式解釋器中,輸入以下代碼:>>>importsys>>>sys.path['','C:\\Python\\Python311\\python311.zip','C:\\Python\\Python311\\DLLs','C:\\Python\\Python311\\lib','C:\\Python\\Python311','C:\\Python\\Python311\\lib\\site-packages']第9頁from…import語句Python的from語句用于從模塊中導(dǎo)入一個指定的部分到當(dāng)前命名空間中,語法如下:frommodnameimportname1[,name2[,...nameN]]例如,要導(dǎo)入模塊fibo的fib函數(shù),使用如下語句:>>>fromfiboimportfib,fib2>>>fib(500)1123581321345589144233377第10頁創(chuàng)建模塊除了系統(tǒng)標準庫外,Python還允許程序員自定義模塊。模塊是一個包含所有定義的函數(shù)和變量的文件,其后綴名是.py。模塊可以被別的程序引入,以使用該模塊中的函數(shù)等功能。模塊中能定義函數(shù)、類和變量,模塊里也能包含可執(zhí)行的代碼。新建模塊文件modle_1.py,內(nèi)容如下:defp_func(arg):print('hello',arg)return第11頁安裝第三方模塊在Python編程中,除了內(nèi)置模塊、標準模塊之外,還有第三方的模塊即擴展模塊使用。要使用第三方模塊,需要先安裝第三方模塊。在Python中,安裝第三方模塊,是通過setuptools這個工具完成的。Python有兩個封裝了setuptools的包管理工具:easy_install和pip。目前官方推薦使用pip。第12頁主要內(nèi)容8.1模塊8.2模塊高級技術(shù)8.3Python中的包8.5常用內(nèi)建模塊8.6本章實戰(zhàn)8.7本章小結(jié)第13頁8.2模塊高級技術(shù)__name__屬性:如果想在模塊被引入時,模塊中的某一程序塊不執(zhí)行,可以用__name__屬性來使該程序塊僅在該模塊自身運行時執(zhí)行。示例程序如下:#!/usr/bin/python3#文件名:using_name.pyif__name__=='__main__':print('程序本身在運行')else:print('我在另一模塊運行')Dir()函數(shù):dir()函數(shù)是Python內(nèi)置函數(shù),通過該函數(shù)可以找到模塊內(nèi)定義的所有名稱,并以一個字符串列表的形式返回,示例程序如下:>>>importusing_name>>>dir(using_name)第14頁主要內(nèi)容8.1模塊8.2模塊的高級技術(shù)8.3Python中的包8.4常用內(nèi)建模塊8.5本章實戰(zhàn)8.6本章小結(jié)第15頁8.3Python中的包包的定義:包總是一個目錄,可以使用import導(dǎo)入包,或者from+import來導(dǎo)入包中的部分模塊。包目錄下為首的一個文件便是__init__.py。包的導(dǎo)入:有以下3種方式。importPackageA.SubPackageA.ModuleAfromPackageA.SubPackageAimportModuleAfromPackageA.SubPackageA.ModuleAimportfunctionA包的組織:包是Python模塊文件所在的目錄,且該目錄下必須存在__init__.py文件。常見的包結(jié)構(gòu)如下:package_a├──__init__.py├──module_a1.py└──module_a2.pypackage_b├──__init__.py├──module_b1.py└──module_b2.py第16頁主要內(nèi)容8.1模塊8.2模塊的高級技術(shù)8.3Python中的包8.4常用內(nèi)建模塊8.5本章實戰(zhàn)8.6本章小結(jié)第17頁8.4常用內(nèi)建模塊collectionsbase64structhashlibitertoolsXMLHTMLParser第18頁主要內(nèi)容8.1模塊8.2模塊的高級技術(shù)8.3Python中的包8.4常用內(nèi)建模塊8.5本章實戰(zhàn)8.6本章小結(jié)第19頁8.5本章實戰(zhàn)創(chuàng)建一個模塊安裝模塊詳見教材第20頁主要內(nèi)容8.1模塊8.2模塊的高級技術(shù)8.3Python中的包8.4常用內(nèi)建模塊8.5本章實戰(zhàn)8.6本章小結(jié)第21頁8.6本章小結(jié)模塊就是選擇作為模塊處理的Python源文件。盡管聽起來很簡單,但是創(chuàng)建模塊時需要遵循下面一些規(guī)則:為模塊和模塊中的所有類、方法和函數(shù)建立文檔。測試模塊并包含至少一個測試函數(shù)。定義要導(dǎo)出模塊中的哪些項,包括哪些類或函數(shù)等。為使用模塊時可能出現(xiàn)的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論