本篇文章為大家展示了python具體有哪些常用的模塊,代碼簡明扼要并且容易理解,絕對能使你眼前一亮,通過這篇文章的詳細(xì)介紹希望你能有所收獲。
創(chuàng)新互聯(lián)建站基于成都重慶香港及美國等地區(qū)分布式IDC機(jī)房數(shù)據(jù)中心構(gòu)建的電信大帶寬,聯(lián)通大帶寬,移動大帶寬,多線BGP大帶寬租用,是為眾多客戶提供專業(yè)服務(wù)器托管報價,主機(jī)托管價格性價比高,為金融證券行業(yè)遂寧聯(lián)通機(jī)房,ai人工智能服務(wù)器托管提供bgp線路100M獨(dú)享,G口帶寬及機(jī)柜租用的專業(yè)成都idc公司。
os模塊:
os.remove() 刪除文件 os.unlink() 刪除文件 os.rename() 重命名文件 os.listdir() 列出指定目錄下所有文件 os.chdir() 改變當(dāng)前工作目錄 os.getcwd() 獲取當(dāng)前文件路徑 os.mkdir() 新建目錄 os.rmdir() 刪除空目錄(刪除非空目錄, 使用shutil.rmtree()) os.makedirs() 創(chuàng)建多級目錄 os.removedirs() 刪除多級目錄 os.stat(file) 獲取文件屬性 os.chmod(file) 修改文件權(quán)限 os.utime(file) 修改文件時間戳 os.name(file) 獲取操作系統(tǒng)標(biāo)識 os.system() 執(zhí)行操作系統(tǒng)命令 os.execvp() 啟動一個新進(jìn)程 os.fork() 獲取父進(jìn)程ID,在子進(jìn)程返回中返回0 os.execvp() 執(zhí)行外部程序腳本(Uinx) os.spawn() 執(zhí)行外部程序腳本(Windows) os.access(path, mode) 判斷文件權(quán)限(詳細(xì)參考cnblogs) os.wait() 暫時未知
os.path模塊:
os.path.split(filename) 將文件路徑和文件名分割(會將最后一個目錄作為文件名而分離) os.path.splitext(filename) 將文件路徑和文件擴(kuò)展名分割成一個元組 os.path.dirname(filename) 返回文件路徑的目錄部分 os.path.basename(filename) 返回文件路徑的文件名部分 os.path.join(dirname,basename) 將文件路徑和文件名湊成完整文件路徑 os.path.abspath(name) 獲得絕對路徑 os.path.splitunc(path) 把路徑分割為掛載點(diǎn)和文件名 os.path.normpath(path) 規(guī)范path字符串形式 os.path.exists() 判斷文件或目錄是否存在 os.path.isabs() 如果path是絕對路徑,返回True os.path.realpath(path) #返回path的真實路徑 os.path.relpath(path[, start]) #從start開始計算相對路徑 os.path.normcase(path) #轉(zhuǎn)換path的大小寫和斜杠 os.path.isdir() 判斷name是不是一個目錄,name不是目錄就返回false os.path.isfile() 判斷name是不是一個文件,不存在返回false os.path.islink() 判斷文件是否連接文件,返回boolean os.path.ismount() 指定路徑是否存在且為一個掛載點(diǎn),返回boolean os.path.samefile() 是否相同路徑的文件,返回boolean os.path.getatime() 返回最近訪問時間 浮點(diǎn)型 os.path.getmtime() 返回上一次修改時間 浮點(diǎn)型 os.path.getctime() 返回文件創(chuàng)建時間 浮點(diǎn)型 os.path.getsize() 返回文件大小 字節(jié)單位 os.path.commonprefix(list) #返回list(多個路徑)中,所有path共有的最長的路徑 os.path.lexists #路徑存在則返回True,路徑損壞也返回True os.path.expanduser(path) #把path中包含的”~”和”~user”轉(zhuǎn)換成用戶目錄 os.path.expandvars(path) #根據(jù)環(huán)境變量的值替換path中包含的”$name”和”${name}” os.path.sameopenfile(fp1, fp2) #判斷fp1和fp2是否指向同一文件 os.path.samestat(stat1, stat2) #判斷stat tuple stat1和stat2是否指向同一個文件 os.path.splitdrive(path) #一般用在windows下,返回驅(qū)動器名和路徑組成的元組 os.path.walk(path, visit, arg) #遍歷path,給每個path執(zhí)行一個函數(shù)詳細(xì)見手冊 os.path.supports_unicode_filenames() 設(shè)置是否支持unicode路徑名
stat模塊:
描述os.stat()返回的文件屬性列表中各值的意義 fileStats = os.stat(path) 獲取到的文件屬性列表 fileStats[stat.ST_MODE] 獲取文件的模式 fileStats[stat.ST_SIZE] 文件大小 fileStats[stat.ST_MTIME] 文件最后修改時間 fileStats[stat.ST_ATIME] 文件最后訪問時間 fileStats[stat.ST_CTIME] 文件創(chuàng)建時間 stat.S_ISDIR(fileStats[stat.ST_MODE]) 是否目錄 stat.S_ISREG(fileStats[stat.ST_MODE]) 是否一般文件 stat.S_ISLNK(fileStats[stat.ST_MODE]) 是否連接文件 stat.S_ISSOCK(fileStats[stat.ST_MODE]) 是否COCK文件 stat.S_ISFIFO(fileStats[stat.ST_MODE]) 是否命名管道 stat.S_ISBLK(fileStats[stat.ST_MODE]) 是否塊設(shè)備 stat.S_ISCHR(fileStats[stat.ST_MODE]) 是否字符設(shè)置
sys模塊:
sys.argv 命令行參數(shù)List,第一個元素是程序本身路徑 sys.path 返回模塊的搜索路徑,初始化時使用PYTHONPATH環(huán)境變量的值 sys.modules.keys() 返回所有已經(jīng)導(dǎo)入的模塊列表 sys.modules 返回系統(tǒng)導(dǎo)入的模塊字段,key是模塊名,value是模塊 sys.exc_info() 獲取當(dāng)前正在處理的異常類,exc_type、exc_value、exc_traceback當(dāng)前處理的異常詳細(xì)信息 sys.exit(n) 退出程序,正常退出時exit(0) sys.hexversion 獲取Python解釋程序的版本值,16進(jìn)制格式如:0x020403F0 sys.version 獲取Python解釋程序的版本信息 sys.platform 返回操作系統(tǒng)平臺名稱 sys.stdout 標(biāo)準(zhǔn)輸出 sys.stdout.write(‘a(chǎn)aa‘) 標(biāo)準(zhǔn)輸出內(nèi)容 sys.stdout.writelines() 無換行輸出 sys.stdin 標(biāo)準(zhǔn)輸入 sys.stdin.read() 輸入一行 sys.stderr 錯誤輸出 sys.exc_clear() 用來清除當(dāng)前線程所出現(xiàn)的當(dāng)前的或最近的錯誤信息 sys.exec_prefix 返回平臺獨(dú)立的python文件安裝的位置 sys.byteorder 本地字節(jié)規(guī)則的指示器,big-endian平臺的值是‘big‘,little-endian平臺的值是‘little‘ sys.copyright 記錄python版權(quán)相關(guān)的東西 sys.api_version 解釋器的C的API版本 sys.version_info ‘final‘表示最終,也有‘candidate‘表示候選,表示版本級別,是否有后繼的發(fā)行 sys.getdefaultencoding() 返回當(dāng)前你所用的默認(rèn)的字符編碼格式 sys.getfilesystemencoding() 返回將Unicode文件名轉(zhuǎn)換成系統(tǒng)文件名的編碼的名字 sys.builtin_module_names Python解釋器導(dǎo)入的內(nèi)建模塊列表 sys.executable Python解釋程序路徑 sys.getwindowsversion() 獲取Windows的版本 sys.stdin.readline() 從標(biāo)準(zhǔn)輸入讀一行,sys.stdout.write(“a”) 屏幕輸出a sys.setdefaultencoding(name) 用來設(shè)置當(dāng)前默認(rèn)的字符編碼(詳細(xì)使用參考文檔) sys.displayhook(value) 如果value非空,這個函數(shù)會把他輸出到sys.stdout(詳細(xì)使用參考文檔)
datetime.date,time模塊:
datetime.date.today() 本地日期對象,(用str函數(shù)可得到它的字面表示(2014-03-24)) datetime.date.isoformat(obj) 當(dāng)前[年-月-日]字符串表示(2014-03-24) datetime.date.fromtimestamp() 返回一個日期對象,參數(shù)是時間戳,返回 [年-月-日] datetime.date.weekday(obj) 返回一個日期對象的星期數(shù),周一是0 datetime.date.isoweekday(obj) 返回一個日期對象的星期數(shù),周一是1 datetime.date.isocalendar(obj) 把日期對象返回一個帶有年月日的元組 datetime對象: datetime.datetime.today() 返回一個包含本地時間(含微秒數(shù))的datetime對象 2014-03-24 23:31:50.419000 datetime.datetime.now([tz]) 返回指定時區(qū)的datetime對象 2014-03-24 23:31:50.419000 datetime.datetime.utcnow() 返回一個零時區(qū)的datetime對象 datetime.fromtimestamp(timestamp[,tz]) 按時間戳返回一個datetime對象,可指定時區(qū),可用于strftime轉(zhuǎn)換為日期表示 datetime.utcfromtimestamp(timestamp) 按時間戳返回一個UTC-datetime對象 datetime.datetime.strptime(‘2014-03-16 12:21:21‘,”%Y-%m-%d %H:%M:%S”) 將字符串轉(zhuǎn)為datetime對象 datetime.datetime.strftime(datetime.datetime.now(), ‘%Y%m%d %H%M%S‘) 將datetime對象轉(zhuǎn)換為str表示形式 datetime.date.today().timetuple() 轉(zhuǎn)換為時間戳datetime元組對象,可用于轉(zhuǎn)換時間戳 datetime.datetime.now().timetuple() time.mktime(timetupleobj) 將datetime元組對象轉(zhuǎn)為時間戳 time.time() 當(dāng)前時間戳 time.localtime time.gmtime
hashlib.md5模塊:
hashlib.md5(‘md5_str‘).hexdigest() 對指定字符串md5加密 md5.md5(‘md5_str‘).hexdigest() 對指定字符串md5加密
random模塊:
random.random() 產(chǎn)生0-1的隨機(jī)浮點(diǎn)數(shù) random.uniform(a, b) 產(chǎn)生指定范圍內(nèi)的隨機(jī)浮點(diǎn)數(shù) random.randint(a, b) 產(chǎn)生指定范圍內(nèi)的隨機(jī)整數(shù) random.randrange([start], stop[, step]) 從一個指定步長的集合中產(chǎn)生隨機(jī)數(shù) random.choice(sequence) 從序列中產(chǎn)生一個隨機(jī)數(shù) random.shuffle(x[, random]) 將一個列表中的元素打亂 random.sample(sequence, k) 從序列中隨機(jī)獲取指定長度的片斷
types模塊:
if type(‘1111‘) == types.StringType: 保存了所有數(shù)據(jù)類型名稱。
MySQLdb模塊:
MySQLdb.get_client_info() 獲取API版本 MySQLdb.Binary(‘string‘) 轉(zhuǎn)為二進(jìn)制數(shù)據(jù)形式 MySQLdb.escape_string(‘str‘) 針對mysql的字符轉(zhuǎn)義函數(shù) MySQLdb.DateFromTicks(1395842548) 把時間戳轉(zhuǎn)為datetime.date對象實例 MySQLdb.TimestampFromTicks(1395842548) 把時間戳轉(zhuǎn)為datetime.datetime對象實例 MySQLdb.string_literal(‘str‘) 字符轉(zhuǎn)義 MySQLdb.cursor()游標(biāo)對象上的方法:《python核心編程》P624
atexit模塊:
atexit.register(fun,args,args2..) 注冊函數(shù)func,在解析器退出前調(diào)用該函數(shù)
string模塊:
str.capitalize() 把字符串的第一個字符大寫 str.center(width) 返回一個原字符串居中,并使用空格填充到width長度的新字符串 str.ljust(width) 返回一個原字符串左對齊,用空格填充到指定長度的新字符串 str.rjust(width) 返回一個原字符串右對齊,用空格填充到指定長度的新字符串 str.zfill(width) 返回字符串右對齊,前面用0填充到指定長度的新字符串 str.count(str,[beg,len]) 返回子字符串在原字符串出現(xiàn)次數(shù),beg,len是范圍 str.decode(encodeing[,replace]) 解碼string,出錯引發(fā)ValueError異常 str.encode(encodeing[,replace]) 解碼string str.endswith(substr[,beg,end]) 字符串是否以substr結(jié)束,beg,end是范圍 str.startswith(substr[,beg,end]) 字符串是否以substr開頭,beg,end是范圍 str.expandtabs(tabsize = 8) 把字符串的tab轉(zhuǎn)為空格,默認(rèn)為8個 str.find(str,[stat,end]) 查找子字符串在字符串第一次出現(xiàn)的位置,否則返回-1 str.index(str,[beg,end]) 查找子字符串在指定字符中的位置,不存在報異常 str.isalnum() 檢查字符串是否以字母和數(shù)字組成,是返回true否則False str.isalpha() 檢查字符串是否以純字母組成,是返回true,否則false str.isdecimal() 檢查字符串是否以純十進(jìn)制數(shù)字組成,返回布爾值 str.isdigit() 檢查字符串是否以純數(shù)字組成,返回布爾值 str.islower() 檢查字符串是否全是小寫,返回布爾值 str.isupper() 檢查字符串是否全是大寫,返回布爾值 str.isnumeric() 檢查字符串是否只包含數(shù)字字符,返回布爾值 str.isspace() 如果str中只包含空格,則返回true,否則FALSE str.title() 返回標(biāo)題化的字符串(所有單詞首字母大寫,其余小寫) str.istitle() 如果字符串是標(biāo)題化的(參見title())則返回true,否則false str.join(seq) 以str作為連接符,將一個序列中的元素連接成字符串 str.split(str=‘‘,num) 以str作為分隔符,將一個字符串分隔成一個序列,num是被分隔的字符串 str.splitlines(num) 以行分隔,返回各行內(nèi)容作為元素的列表 str.lower() 將大寫轉(zhuǎn)為小寫 str.upper() 轉(zhuǎn)換字符串的小寫為大寫 str.swapcase() 翻換字符串的大小寫 str.lstrip() 去掉字符左邊的空格和回車換行符 str.rstrip() 去掉字符右邊的空格和回車換行符 str.strip() 去掉字符兩邊的空格和回車換行符 str.partition(substr) 從substr出現(xiàn)的第一個位置起,將str分割成一個3元組。 str.replace(str1,str2,num) 查找str1替換成str2,num是替換次數(shù) str.rfind(str[,beg,end]) 從右邊開始查詢子字符串 str.rindex(str,[beg,end]) 從右邊開始查找子字符串位置 str.rpartition(str) 類似partition函數(shù),不過從右邊開始查找 str.translate(str,del=‘‘) 按str給出的表轉(zhuǎn)換string的字符,del是要過慮的字符
urllib模塊:
urllib.quote(string[,safe]) 對字符串進(jìn)行編碼。參數(shù)safe指定了不需要編碼的字符 urllib.unquote(string) 對字符串進(jìn)行解碼 urllib.quote_plus(string[,safe]) 與urllib.quote類似,但這個方法用‘+‘來替換‘ ‘,而quote用‘%20‘來代替‘ ‘ urllib.unquote_plus(string ) 對字符串進(jìn)行解碼 urllib.urlencode(query[,doseq]) 將dict或者包含兩個元素的元組列表轉(zhuǎn)換成url參數(shù)。 例如 字典{‘name‘:‘wklken‘,‘pwd‘:‘123‘}將被轉(zhuǎn)換為”name=wklken&pwd=123″ urllib.pathname2url(path) 將本地路徑轉(zhuǎn)換成url路徑 urllib.url2pathname(path) 將url路徑轉(zhuǎn)換成本地路徑 urllib.urlretrieve(url[,filename[,reporthook[,data]]]) 下載遠(yuǎn)程數(shù)據(jù)到本地 filename:指定保存到本地的路徑(若未指定該,urllib生成一個臨時文件保存數(shù)據(jù)) reporthook:回調(diào)函數(shù),當(dāng)連接上服務(wù)器、以及相應(yīng)的數(shù)據(jù)塊傳輸完畢的時候會觸發(fā)該回調(diào) data:指post到服務(wù)器的數(shù)據(jù) rulrs = urllib.urlopen(url[,data[,proxies]]) 抓取網(wǎng)頁信息,[data]post數(shù)據(jù)到Url,proxies設(shè)置的代理 urlrs.readline() 跟文件對象使用一樣 urlrs.readlines() 跟文件對象使用一樣 urlrs.fileno() 跟文件對象使用一樣 urlrs.close() 跟文件對象使用一樣 urlrs.info() 返回一個httplib.HTTPMessage對象,表示遠(yuǎn)程服務(wù)器返回的頭信息 urlrs.getcode() 獲取請求返回狀態(tài)HTTP狀態(tài)碼 urlrs.geturl() 返回請求的URL
re模塊:
一、常用正則表達(dá)式符號和語法: '.' 匹配所有字符串,除\n以外 ’-’ 表示范圍[0-9] '*' 匹配前面的子表達(dá)式零次或多次。要匹配 * 字符,請使用 \*。 '+' 匹配前面的子表達(dá)式一次或多次。要匹配 + 字符,請使用 \+ '^' 匹配字符串開頭 ’$’ 匹配字符串結(jié)尾 re '\' 轉(zhuǎn)義字符,使后一個字符改變原來的意思,如果字符串中有字符*需要匹配,可以\*或者字符集[*] re.findall(r'3\*','3*ds') 結(jié)['3*'] '*' 匹配前面的字符0次或多次 re.findall("ab*","cabc3abcbbac")結(jié)果:['ab', 'ab', 'a'] ’?’ 匹配前一個字符串0次或1次 re.findall('ab?','abcabcabcadf')結(jié)果['ab', 'ab', 'ab', 'a'] '{m}' 匹配前一個字符m次 re.findall('cb{1}','bchbchcbfbcbb')結(jié)果['cb', 'cb'] '{n,m}' 匹配前一個字符n到m次 re.findall('cb{2,3}','bchbchcbfbcbb')結(jié)果['cbb'] '\d' 匹配數(shù)字,等于[0-9] re.findall('\d','電話:10086')結(jié)果['1', '0', '0', '8', '6'] '\D' 匹配非數(shù)字,等于[^0-9] re.findall('\D','電話:10086')結(jié)果['電', '話', ':'] '\w' 匹配字母和數(shù)字,等于[A-Za-z0-9] re.findall('\w','alex123,./;;;')結(jié)果['a', 'l', 'e', 'x', '1', '2', '3'] '\W' 匹配非英文字母和數(shù)字,等于[^A-Za-z0-9] re.findall('\W','alex123,./;;;')結(jié)果[',', '.', '/', ';', ';', ';'] '\s' 匹配空白字符 re.findall('\s','3*ds \t\n')結(jié)果[' ', '\t', '\n'] '\S' 匹配非空白字符 re.findall('\s','3*ds \t\n')結(jié)果['3', '*', 'd', 's'] '\A' 匹配字符串開頭 '\Z' 匹配字符串結(jié)尾 '\b' 匹配單詞的詞首和詞尾,單詞被定義為一個字母數(shù)字序列,因此詞尾是用空白符或非字母數(shù)字符來表示的 '\B' 與\b相反,只在當(dāng)前位置不在單詞邊界時匹配 '(?P<name>...)' 分組,除了原有編號外在指定一個額外的別名 re.search("(?P<province>[0-9]{4})(?P<city>[0-9]{2}) (?P<birthday>[0-9]{8})","371481199306143242").groupdict("city") 結(jié)果{'province': '3714', 'city': '81', 'birthday': '19930614'} [] 是定義匹配的字符范圍。比如 [a-zA-Z0-9] 表示相應(yīng)位置的字符要匹配英文字符和數(shù)字。[\s*]表示空格或者*號。 二、常用的re函數(shù): 方法/屬性 作用 re.match(pattern, string, flags=0) 從字符串的起始位置匹配,如果起始位置匹配不成功的話,match()就返回none re.search(pattern, string, flags=0) 掃描整個字符串并返回第一個成功的匹配 re.findall(pattern, string, flags=0) 找到RE匹配的所有字符串,并把他們作為一個列表返回 re.finditer(pattern, string, flags=0) 找到RE匹配的所有字符串,并把他們作為一個迭代器返回 re.sub(pattern, repl, string, count=0, flags=0) 替換匹配到的字符串
math模塊:
ceil:取大于等于x的最小的整數(shù)值,如果x是一個整數(shù),則返回x copysign:把y的正負(fù)號加到x前面,可以使用0 cos:求x的余弦,x必須是弧度 degrees:把x從弧度轉(zhuǎn)換成角度 e:表示一個常量 exp:返回math.e,也就是2.71828的x次方 expm1:返回math.e的x(其值為2.71828)次方的值減1 fabs:返回x的絕對值 factorial:取x的階乘的值 floor:取小于等于x的最大的整數(shù)值,如果x是一個整數(shù),則返回自身 fmod:得到x/y的余數(shù),其值是一個浮點(diǎn)數(shù) frexp:返回一個元組(m,e),其計算方式為:x分別除0.5和1,得到一個值的范圍 fsum:對迭代器里的每個元素進(jìn)行求和操作 gcd:返回x和y的最大公約數(shù) hypot:如果x是不是無窮大的數(shù)字,則返回True,否則返回False isfinite:如果x是正無窮大或負(fù)無窮大,則返回True,否則返回False isinf:如果x是正無窮大或負(fù)無窮大,則返回True,否則返回False isnan:如果x不是數(shù)字True,否則返回False ldexp:返回x*(2**i)的值 log:返回x的自然對數(shù),默認(rèn)以e為基數(shù),base參數(shù)給定時,將x的對數(shù)返回給定的base,計算式為:log(x)/log(base) log10:返回x的以10為底的對數(shù) log1p:返回x+1的自然對數(shù)(基數(shù)為e)的值 log2:返回x的基2對數(shù) modf:返回由x的小數(shù)部分和整數(shù)部分組成的元組 pi:數(shù)字常量,圓周率 pow:返回x的y次方,即x**y radians:把角度x轉(zhuǎn)換成弧度 sin:求x(x為弧度)的正弦值 sqrt:求x的平方根 tan:返回x(x為弧度)的正切值 trunc:返回x的整數(shù)部分
上述內(nèi)容就是python具體有哪些常用的模塊,你們學(xué)到知識或技能了嗎?如果還想學(xué)到更多技能或者豐富自己的知識儲備,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。
標(biāo)題名稱:python具體有哪些常用的模塊
網(wǎng)站網(wǎng)址:http://jinyejixie.com/article14/ipjpge.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、面包屑導(dǎo)航、網(wǎng)站設(shè)計、企業(yè)網(wǎng)站制作、品牌網(wǎng)站建設(shè)、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)