成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Python內置模塊和第三方模塊

codercao / 1461人閱讀

摘要:的強大之處在于他有非常豐富和強大的標準庫和第三方庫模塊,幾乎你想實現(xiàn)的任何功能都有相應的庫支持,就類似于中的類庫亦或的包,前端中的庫。提供了一個簡單的方法來導入一個模塊中的所有項目。在啟動時,根據(jù)內建規(guī)則變量進行初始化。

Python的強大之處在于他有非常豐富和強大的標準庫和第三方庫(模塊),幾乎你想實現(xiàn)的任何功能都有相應的Python庫支持,就類似于C#中的類庫亦或JAVA的jar包,前端中的JS庫。
使用模塊有什么好處

其實模塊化這個概念在任何的編程語言中都是存在的,可以想象一下,如果一直在一個文件里面編寫的代碼,那么代碼會越來越長,后期很難維護和升級。

為了編寫可維護的代碼,我們會對代碼進行拆分,分到不同的文件里面,這樣每個文件的代碼量就少了,在python中,一個.py文件就可以理解為一個模塊,模塊之間可以互相引用。

除了可以自己編寫模塊以外python還給我們內置了一些模塊稱為標準庫,還有需要多帶帶安裝的第三方庫

模塊導入方法

我們已經(jīng)知道每一個.py文件其實就是一個模塊,那么我們來動手編寫一個模塊

#內容為module1.py
message="hello world"
def say():
    print("hello")

模塊定義好了在其他文件中入如何導入模塊
import module1
如果導入多個模塊以逗號分隔,如import module_name1,module_name2

#newdemo.py 新創(chuàng)建的py文件中到入模塊,并訪問模塊下方法
#第一種導入方式
import module1
module1.say()
#第二種導入方式
from module1 import *
say()

運行一下發(fā)現(xiàn)上面的兩種導入方式都沒毛病,都可以正常運行,我們來對比下兩種導入方式:

調用方式不同

前者是 將被導入的模塊的名稱放入到當前的模塊內; 而后者 是將被導入的函數(shù)或變量的名稱放入到當前操作的模塊內。

from ...import提供了一個簡單的方法來導入一個模塊中的所有項目。然而這種聲明不該被過多地使用。

from ...import導入會和你文件內的函數(shù)、變量名稱不能沖突會被覆蓋(解決方案看代碼)

#為了防止名稱沖突,通過as起一個別名
from module1 import say as newsay
def say():
    print("不是導入模塊的say")
say() #自己的
newsay() #引來的

導入模塊我們已經(jīng)會了,那導入包和導入模塊一樣么,顯然不會一樣

import package_test #導入包的時候會先執(zhí)行 __init__下的內容
# 在__init__中from . import test1
print(package_test.test1.name)
內置模塊

一般情況下它們的存放目錄

標準庫:應該如何使用標準庫:
1.datetime模塊:datetime模塊是對time模塊的一個高級封裝(time包基于C語言的庫函數(shù))

#前面剛說了模塊的不同導入方式,第一種
import datetime
print(datetime.datetime.now()) #當前時間 2017-12-27 10:05:16.684310
print(datetime.date.today()) #格式化輸出 2017-12-27
print(datetime.datetime.now()+datetime.timedelta(days=10))  #比現(xiàn)在加10天
print(datetime.datetime.now()+datetime.timedelta(days=-10)) #比現(xiàn)在減10天
print(datetime.datetime.now()+datetime.timedelta(hours=-10)) #比現(xiàn)在減10小時
print(datetime.datetime.now()+datetime.timedelta(seconds=120)) #比現(xiàn)在+120s
#第二種
from datetime import datetime
print(datetime.now()) #當前時間 2017-12-27 10:05:16.684310

2.random模塊:Python中的random模塊用于生成隨機數(shù)

import random
print(random.random()) #用于生成一個0到1的隨機符點數(shù): 0 <= n < 1.0 
print(random.randint(1,7))#用于生成一個指定范圍內的整數(shù),包含1 和 7
print(random.randrange(1,3))#隨機指定范圍內的整數(shù),不包含3
print(random.choice("lidao"))#隨機字符
print(random.choice(["aa","bb","cc"]))#隨機在列表中取值
print(random.randrange(1,9000)+1000)#生成四位數(shù)字驗證碼

3.sys模塊:sys模塊提供了一系列有關Python運行環(huán)境的變量和函數(shù)

import sys

print(sys.platform) #獲取當前執(zhí)行環(huán)境的平臺,如win32表示是Windows 32bit操作系統(tǒng),linux2表示是linux平臺;
print(sys.path) #path是一個目錄列表,供Python從中查找第三方擴展模塊。在python啟動時,sys.path根據(jù)內建規(guī)則、PYTHONPATH變量進行初始化。
print(sys.builtin_module_names) #返回一個列表,包含內建模塊的名字
print(sys.argv) #可以用sys.argv獲取當前正在執(zhí)行的命令行參數(shù)的參數(shù)列表(list) sys.argv[0]    當前程序名 sys.argv[1]    第一個參數(shù)

4.os模塊:os模塊包含普遍的操作系統(tǒng)功能,如文件操作、目錄等,與具體的平臺無關

import os

print(os.name) #判斷現(xiàn)在正在實用的平臺,Windows 返回 ‘nt"; Linux 返回’posix"
print(os.getcwd())#得到當前工作的目錄
os.rename("game.py","game1.py")#文件重命名  
print(os.listdir())#指定所有目錄下所有的文件和目錄名
print(os.mkdir("aa"))#創(chuàng)建目錄
print(os.system("dir"))#執(zhí)行shell命令

當然上面只是簡單讓大家先了解下內置模塊的使用,方法還有很多,后面在案例遇到的時候呢我們再去列出來。

第三方模塊

1.xlrd模塊:Python使用xlrd模塊讀寫Excel文件

#第一步:通過pip install xlrd 安裝
#第二步:導入模塊
import xlrd
#第三步:讀取數(shù)據(jù)
data = xlrd.open_workbook("test.xlsx")
table=data.sheets()[0] #通過索引順序獲取工作表
print(table.row_values(0)) #整行
print(table.col_values(0)) #整列
print(table.nrows) #行數(shù)
print(table.ncols) #列數(shù)
#通過循環(huán)行列表數(shù)據(jù)
for i in range(table.nrows):
    print(table.row_values(i))
print(table.cell(0,0).value) #單元格

2.xpinyin模塊:一個把漢字轉成拼音的模塊

#pip install xpinyin
from xpinyin import Pinyin
p=Pinyin()
print(p.get_pinyin("北京"))

3.Image模塊:Python操作圖像的模塊

from PIL import Image
import os

#pip install Image

im=Image.open("test.jpg") #加載圖像
#im.show() #打開圖片
#創(chuàng)建縮略圖
im.thumbnail((500,500))#thumbnail函數(shù)接受一個元組作為參數(shù),分別對應著縮略圖的寬高,在縮略時,函數(shù)會保持圖片的寬高比例。如果輸入的參數(shù)寬高和原圖像寬高比不同,則會依據(jù)最小對應邊進行原比例縮放。 
im.save("newtest.jpg","JPEG")
#圖像裁剪
region=im.crop((100,100,300,200))
region.save("croptest.jpeg")
# 旋轉圖片
# 左旋轉45度
im = im.rotate(45)
im.save("rotate-l45.jpeg")

Python有很多非常有意思的模塊和資源,給大家貼一個地址,自己看看哈https://github.com/jobbole/aw...

文章版權歸作者所有,未經(jīng)允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/41124.html

相關文章

  • Python的高級特性,模塊IO操作

    摘要:所以如果像上述這樣引入模塊的時候,調用函數(shù)必須加上模塊名通常情況下鼓勵每個語句只導入一個包方便理解和閱讀代碼。 今天我們學習Python的高級特性、模塊和IO操作,通過學習這些,我們可以更快的了解Python,使用Python。 高級特性中會講述列表生成式、生成器、和一些高級函數(shù),學習這些方便我們快速的生成列表,節(jié)省我們使用Python的時間,更快的使用Python達成我們的目的。 模...

    WelliJhon 評論0 收藏0
  • Python標準庫---0、簡介

    摘要:下一篇文章標準庫內置函數(shù)標準庫語言參考描述了語言的具體語法和語義,這份庫參考則介紹了與一同發(fā)行的標準庫。這個庫也包含了內置函數(shù)和異常不需要語句就可以在所有代碼中使用的對象。下一篇文章標準庫內置函數(shù) 下一篇文章:Python標準庫---1、內置函數(shù) Python 標準庫 Python 語言參考 描述了 Python 語言的具體語法和語義,這份庫參考則介紹了與 Python 一同發(fā)行的標...

    mo0n1andin 評論0 收藏0
  • Python - 模塊module

    摘要:一什么是模塊中,一個文件就稱之為一個模塊。所有的內置函數(shù)為避免模塊名沖突,又引入了按目錄來阻止模塊沖突的方法,稱為包。例如下列小程序以自建的模塊,編寫一個的模塊。如果在其他地方導入該模塊時,判斷將失敗,即僅在此模塊單獨運行時生效。 一、什么是模塊 Python中,一個.py文件就稱之為一個模塊。那么使用模塊有什么好處呢? (1)提高了代碼的可維護性。(2)代碼不必從零開始,當一個模塊...

    ranwu 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<