- 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的真實(shí)路徑
- os.path.relpath(path[, start]) #從start開始計(jì)算相對路徑
- 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路徑名
- 描述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.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.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(‘md5_str‘).hexdigest() 對指定字符串md5加密
- md5.md5(‘md5_str‘).hexdigest() 對指定字符串md5加密
- 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ī)獲取指定長度的片斷
- 保存了所有數(shù)據(jù)類型名稱。
- if type(‘1111‘) == types.StringType:
- 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對象實(shí)例
- MySQLdb.TimestampFromTicks(1395842548) 把時間戳轉(zhuǎn)為datetime.datetime對象實(shí)例
- MySQLdb.string_literal(‘str‘) 字符轉(zhuǎn)義
- MySQLdb.cursor()游標(biāo)對象上的方法:《python核心編程》P624
atexit.register(fun,args,args2..) 注冊函數(shù)func,在解析器退出前調(diào)用該函數(shù)
- 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.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
- 一.常用正則表達(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) 替換匹配到的字符串
- 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),其計(jì)算方式為: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,計(jì)算式為: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ù)部分
聯(lián)系客服