python學(xué)習(xí)課件_第1頁
python學(xué)習(xí)課件_第2頁
python學(xué)習(xí)課件_第3頁
python學(xué)習(xí)課件_第4頁
python學(xué)習(xí)課件_第5頁
已閱讀5頁,還剩11頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、1.運(yùn)行python有三種不同的辦法來啟動(dòng) Python。最簡單的方式就是l 交互式的啟動(dòng)解釋器,每次輸入一行Python 代碼來執(zhí)行。l 另外一種啟動(dòng) Python 的方法是運(yùn)行 Python 腳本。這樣會(huì)調(diào)用相關(guān)的腳本解釋器。l 最后一種辦法就是用集成開發(fā)環(huán)境中的圖形用戶界面運(yùn)行 Python。集成開發(fā)環(huán)境通常整合了其他的工具,例如集成的調(diào)試器、文本編輯器,而且支持各種像 CVS 這樣的源代碼版本控制工具2.Python轉(zhuǎn)義字符在需要在字符中使用特殊字符時(shí),python用反斜杠()轉(zhuǎn)義字符。如下表:轉(zhuǎn)義字符描述(在行尾時(shí))續(xù)行符反斜杠符號(hào)'單引號(hào)"雙引號(hào)a響鈴b退格(Ba

2、ckspace)e轉(zhuǎn)義000空n換行v縱向制表符t橫向制表符r回車f換頁oyy八進(jìn)制數(shù)yy代表的字符,例如:o12代表換行xyy十進(jìn)制數(shù)yy代表的字符,例如:x0a代表換行other其它的字符以普通格式輸出Python字符串運(yùn)算符下表實(shí)例變量a = Hellob = Python操作符描述實(shí)例+字符串連接a + b 輸出結(jié)果: HelloPython*重復(fù)輸出字符串a(chǎn)*2 輸出結(jié)果:HelloHello通過索引獲取字符串中字符a1 輸出結(jié)果 e : 截取字符串中的一部分a1:4 輸出結(jié)果 ellin成員運(yùn)算符 - 如果字符串中包含給定的字符返回 TrueH in a

3、0;輸出結(jié)果 1not in成員運(yùn)算符 - 如果字符串中不包含給定的字符返回 TrueM not in a 輸出結(jié)果 1r/R原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思來使用,沒有轉(zhuǎn)義特殊或不能打印的字符。 原始字符串除在字符串的第一個(gè)引號(hào)前加上字母"r"(可以大小寫)以外,與普通字符串有著幾乎完全相同的語法。print r'n' prints n 和 print R'n'prints n%格式字符串情看一下章節(jié)Python字符串格式化Python 支持格式化字符串的輸出 。盡管這樣可能會(huì)用到

4、非常復(fù)雜的表達(dá)式,但最基本的用法是將一個(gè)值插入到一個(gè)有字符串格式符 %s 的字符串中。在 Python 中,字符串格式化使用與 C 中 sprintf 函數(shù)一樣的語法。如下實(shí)例:#!/usr/bin/pythonprint "My name is %s and weight is %d kg!" % ('Zara', 21) 以上實(shí)例輸出結(jié)果:My name is Zara and weight is 21 kg!python字符串格式化符號(hào):<tbody    符   號(hào)描述  &

5、#160;   %c 格式化字符及其ASCII碼      %s 格式化字符串      %d 格式化整數(shù)      %u 格式化無符號(hào)整型      %o 格式化無符號(hào)八進(jìn)制數(shù)      %x 格式化無符號(hào)十六進(jìn)制數(shù)    &#

6、160; %X 格式化無符號(hào)十六進(jìn)制數(shù)(大寫)      %f 格式化浮點(diǎn)數(shù)字,可指定小數(shù)點(diǎn)后的精度      %e 用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù)      %E 作用同%e,用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù)      %g 根據(jù)值的大小決定使用%f活%e      %G 作用同%g,根據(jù)值的大小決定

7、使用%f活%e      %p 用十六進(jìn)制數(shù)格式化變量的地址格式化操作符輔助指令:符號(hào)功能*定義寬度或者小數(shù)點(diǎn)精度-用做左對(duì)齊+在正數(shù)前面顯示加號(hào)( + )<sp>在正數(shù)前面顯示空格#在八進(jìn)制數(shù)前面顯示零('0'),在十六進(jìn)制前面顯示'0x'或者'0X'(取決于用的是'x'還是'X')0顯示的數(shù)字前面填充'0'而不是默認(rèn)的空格%'%'輸出一個(gè)單一的'%'(var)映射變量(字典參數(shù))m.n.m 是

8、顯示的最小總寬度,n 是小數(shù)點(diǎn)后的位數(shù)(如果可用的話)Python三引號(hào)(triple quotes)python中三引號(hào)可以將復(fù)雜的字符串進(jìn)行復(fù)制:python三引號(hào)允許一個(gè)字符串跨多行,字符串中可以包含換行符、制表符以及其他特殊字符。三引號(hào)的語法是一對(duì)連續(xù)的單引號(hào)或者雙引號(hào)(通常都是成對(duì)的用)。 >>> hi = '''hi there'''>>> hi # repr()'hinthere'>>> print hi # str()hi there python的字符串內(nèi)建函

9、數(shù)字符串方法是從python1.6到2.0慢慢加進(jìn)來的它們也被加到了Jython中。這些方法實(shí)現(xiàn)了string模塊的大部分方法,如下表所示列出了目前字符串內(nèi)建支持的方法,所有的方法都包含了對(duì)Unicode的支持,有一些甚至是專門用于Unicode的。2.1string函數(shù)Python 接收單引號(hào)(' ),雙引號(hào)(" ),三引號(hào)(''' """) 來表示字符串,引號(hào)的開始與結(jié)束必須的相同類型的。方法描述string.capitalize()把字符串的第一個(gè)字符大寫string.center(width)返回一個(gè)原字符串居中,

10、并使用空格填充至長度 width 的新字符串string.count(str, beg=0, end=len(string)返回 str 在 string 里面出現(xiàn)的次數(shù),如果 beg 或者 end 指定則返回指定范圍內(nèi) str 出現(xiàn)的次數(shù)string.decode(encoding='UTF-8', errors='strict')以 encoding 指定的編碼格式解碼 string,如果出錯(cuò)默認(rèn)報(bào)一個(gè) ValueError 的 異 常 , 除 非 errors 指 定 的 是 'ignore' 或 者'replace'str

11、ing.encode(encoding='UTF-8', errors='strict')以 encoding 指定的編碼格式編碼 string,如果出錯(cuò)默認(rèn)報(bào)一個(gè)ValueError 的異常,除非 errors 指定的是'ignore'或者'replace'string.endswith(obj, beg=0, end=len(string)檢查字符串是否以 obj 結(jié)束,如果beg 或者 end 指定則檢查指定的范圍內(nèi)是否以 obj 結(jié)束,如果是,返回 True,否則返回 False.string.expandtabs(tab

12、size=8)把字符串 string 中的 tab 符號(hào)轉(zhuǎn)為空格,默認(rèn)的空格數(shù) tabsize 是 8.string.find(str, beg=0, end=len(string)檢測 str 是否包含在 string 中,如果 beg 和 end 指定范圍,則檢查是否包含在指定范圍內(nèi),如果是返回開始的索引值,否則返回-1string.index(str, beg=0, end=len(string)跟find()方法一樣,只不過如果str不在 string中會(huì)報(bào)一個(gè)異常.string.isalnum()如果 string 至少有一個(gè)字符并且所有字符都是字母或數(shù)字則返回 True,否則返回

13、Falsestring.isalpha()如果 string 至少有一個(gè)字符并且所有字符都是字母則返回 True,否則返回 Falsestring.isdecimal()如果 string 只包含十進(jìn)制數(shù)字則返回 True 否則返回 False.string.isdigit()如果 string 只包含數(shù)字則返回 True 否則返回 False.string.islower()如果 string 中包含至少一個(gè)區(qū)分大小寫的字符,并且所有這些(區(qū)分大小寫的)字符都是小寫,則返回 True,否則返回 Falsestring.isnumeric()如果 string 中只包含數(shù)字字符,則返回 Tru

14、e,否則返回 Falsestring.isspace()如果 string 中只包含空格,則返回 True,否則返回 False.string.istitle()如果 string 是標(biāo)題化的(見 title()則返回 True,否則返回 Falsestring.isupper()如果 string 中包含至少一個(gè)區(qū)分大小寫的字符,并且所有這些(區(qū)分大小寫的)字符都是大寫,則返回 True,否則返回 Falsestring.join(seq)Merges (concatenates)以 string 作為分隔符,將 seq 中所有的元素(的字符串表示)合并為一個(gè)新的字符串string.ljus

15、t(width)返回一個(gè)原字符串左對(duì)齊,并使用空格填充至長度 width 的新字符串string.lower()轉(zhuǎn)換 string 中所有大寫字符為小寫.string.lstrip()截掉 string 左邊的空格string.maketrans(intab, outtab)maketrans() 方法用于創(chuàng)建字符映射的轉(zhuǎn)換表,對(duì)于接受兩個(gè)參數(shù)的最簡單的調(diào)用方式,第一個(gè)參數(shù)是字符串,表示需要轉(zhuǎn)換的字符,第二個(gè)參數(shù)也是字符串表示轉(zhuǎn)換的目標(biāo)。max(str)返回字符串 str 中最大的字母。min(str)返回字符串 str 中最小的字母。string.pa

16、rtition(str)有點(diǎn)像 find()和 split()的結(jié)合體,從 str 出現(xiàn)的第一個(gè)位置起,把 字 符 串 string 分 成 一 個(gè) 3 元 素 的 元 組 (string_pre_str,str,string_post_str),如果 string 中不包含str 則 string_pre_str = string.string.replace(str1, str2, num=string.count(str1)把 string 中的 str1 替換成 str2,如果 num 指定,則替換不超過 num 次.string.rfind(str, beg=0,end=len(st

17、ring) )類似于 find()函數(shù),不過是從右邊開始查找.string.rindex( str, beg=0,end=len(string)類似于 index(),不過是從右邊開始.string.rjust(width)返回一個(gè)原字符串右對(duì)齊,并使用空格填充至長度 width 的新字符串string.rpartition(str)類似于 partition()函數(shù),不過是從右邊開始查找.string.rstrip()刪除 string 字符串末尾的空格.string.split(str="", num=string.count(str)以 str 為分隔符切片 stri

18、ng,如果 num有指定值,則僅分隔 num 個(gè)子字符串string.splitlines(num=string.count('n')按照行分隔,返回一個(gè)包含各行作為元素的列表,如果 num 指定則僅切片 num 個(gè)行.string.startswith(obj, beg=0,end=len(string)檢查字符串是否是以 obj 開頭,是則返回 True,否則返回 False。如果beg 和 end 指定值,則在指定范圍內(nèi)檢查.string.strip(obj)在 string 上執(zhí)行 lstrip()和 rstrip()string.swapcase()翻轉(zhuǎn) string

19、 中的大小寫string.title()返回"標(biāo)題化"的 string,就是說所有單詞都是以大寫開始,其余字母均為小寫(見 istitle()string.translate(str, del="")根據(jù) str 給出的表(包含 256 個(gè)字符)轉(zhuǎn)換 string 的字符,要過濾掉的字符放到 del 參數(shù)中string.upper()轉(zhuǎn)換 string 中的小寫字母為大寫string.zfill(width)返回長度為 width 的字符串,原字符串 string 右對(duì)齊,前面填充0string.isdecimal()isdecimal()方法檢查字符串

20、是否只包含十進(jìn)制字符。這種方法只存在于unicode對(duì)象。 3、 文件3.0文件描述open函數(shù)你必須先用Python內(nèi)置的open()函數(shù)打開一個(gè)文件,創(chuàng)建一個(gè)file對(duì)象,相關(guān)的輔助方法才可以調(diào)用它進(jìn)行讀寫。語法:file object = open(file_name , access_mode, buffering)各個(gè)參數(shù)的細(xì)節(jié)如下:file_name:file_name變量是一個(gè)包含了你要訪問的文件名稱的字符串值。access_mode:access_mode決定了打開文件的模式:只讀,寫入,追加等。所有可取值見如下的完全列表。這個(gè)參數(shù)是非強(qiáng)制的,默認(rèn)文件訪問模式為只讀(

21、r)。buffering:如果buffering的值被設(shè)為0,就不會(huì)有寄存。如果buffering的值取1,訪問文件時(shí)會(huì)寄存行。如果將buffering的值設(shè)為大于1的整數(shù),表明了這就是的寄存區(qū)的緩沖大小。如果取負(fù)值,寄存區(qū)的緩沖大小則為系統(tǒng)默認(rèn)。 模式描述r以只讀方式打開文件。文件的指針將會(huì)放在文件的開頭。這是默認(rèn)模式。rb以二進(jìn)制格式打開一個(gè)文件用于只讀。文件指針將會(huì)放在文件的開頭。這是默認(rèn)模式。r+打開一個(gè)文件用于讀寫。文件指針將會(huì)放在文件的開頭。rb+以二進(jìn)制格式打開一個(gè)文件用于讀寫。文件指針將會(huì)放在文件的開頭。w打開一個(gè)文件只用于寫入。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)

22、建新文件。wb以二進(jìn)制格式打開一個(gè)文件只用于寫入。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。w+打開一個(gè)文件用于讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。wb+以二進(jìn)制格式打開一個(gè)文件用于讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。a打開一個(gè)文件用于追加。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。也就是說,新的內(nèi)容將會(huì)被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進(jìn)行寫入。ab以二進(jìn)制格式打開一個(gè)文件用于追加。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。也就是說,新的內(nèi)容將會(huì)被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進(jìn)

23、行寫入。a+打開一個(gè)文件用于讀寫。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。文件打開時(shí)會(huì)是追加模式。如果該文件不存在,創(chuàng)建新文件用于讀寫。ab+以二進(jìn)制格式打開一個(gè)文件用于追加。如果該文件已存在,文件指針將會(huì)放在文件的結(jié)尾。如果該文件不存在,創(chuàng)建新文件用于讀寫。3.1os.pathl os.path.isdir(name):判斷name是不是一個(gè)目錄,name不是目錄就返回falsel os.path.isfile(name):判斷name是不是一個(gè)文件,不存在name也返回falsel os.path.exists(name):判斷是否存在文件或目錄namel os.path.getsi

24、ze(name):獲得文件大小,如果name是目錄返回0Ll os.path.abspath(name):獲得絕對(duì)路徑l os.path.normpath(path):規(guī)范path字符串形式l os.path.split(name):分割文件名與目錄(事實(shí)上,如果你完全使用目錄,它也會(huì)將最后一個(gè)目錄作為文件名而分離,同時(shí)它不會(huì)判斷文件或目錄是否存在)l os.path.splitext():分離文件名與擴(kuò)展名l os.path.join(path,name):連接目錄與文件名或目錄l os.path.basename(path):返回文件名l os.path.dirname(path):返回文

25、件路徑l os.path 模塊中的路徑名訪問函數(shù)3.2os文件 l linesep 用于在文件中分隔行的字符串l sep 用來分隔文件路徑名的字符串l pathsep 用于分隔文件路徑的字符串l curdir 當(dāng)前工作目錄的字符串名稱l pardir (當(dāng)前工作目錄的)父目錄字符串名稱l 重命名:os.rename(old, new)l 刪除:os.remove(file)l 列出目錄下的文件:os.listdir(path)l 獲取當(dāng)前工作目錄:os.getcwd()l 改變工作目錄:os.chdir(newdir)l 創(chuàng)建多級(jí)目錄:os.makedirs(r"c:pythonte

26、st")l 創(chuàng)建單個(gè)目錄:os.mkdir("test")l 刪除多個(gè)目錄:os.removedirs(r"c:python") #刪除所給路徑最后一個(gè)目錄下所有空目錄。l 刪除單個(gè)目錄:os.rmdir("test")l 獲取文件屬性:os.stat(file)l 修改文件權(quán)限與時(shí)間戳:os.chmod(file)l 執(zhí)行操作系統(tǒng)命令:os.system("dir")l 啟動(dòng)新進(jìn)程:os.exec(), os.execvp()l 在后臺(tái)執(zhí)行程序:osspawnv()l 終止當(dāng)前進(jìn)程:os.exit(),

27、 os._exit()l 分離文件名:os.path.split(r"c:pythonhello.py") -> ("c:python", "hello.py")l 分離擴(kuò)展名:os.path.splitext(r"c:pythonhello.py") -> ("c:pythonhello", ".py")l 獲取路徑名:os.path.dirname(r"c:pythonhello.py") -> "c:python"

28、;l 獲取文件名:os.path.basename(r"r:pythonhello.py") -> "hello.py"l 判斷文件是否存在:os.path.exists(r"c:pythonhello.py") -> Truel 判斷是否是絕對(duì)路徑:os.path.isabs(r".python") -> Falsel 判斷是否是目錄:os.path.isdir(r"c:python") -> Truel 判斷是否是文件:os.path.isfile(r"c:

29、pythonhello.py") -> Truel 判斷是否是鏈接文件:os.path.islink(r"c:pythonhello.py") -> Falsel 獲取文件大?。簅s.path.getsize(filename)l *:os.ismount("c:") -> Truel 搜索目錄下的所有文件:os.path.walk()l3.3分隔 basename() 去掉目錄路徑, 返回文件名 dirname() 去掉文件名, 返回目錄路徑 join() 將分離的各部分組合成一個(gè)路徑名 split() 返回(dirname

30、(), basename() 元組 splitdrive() 返回(drivename, pathname) 元組 splitext() 返回(filename, extension) 元組 信息 getatime() 返回最近訪問時(shí)間 getctime() 返回文件創(chuàng)建時(shí)間 getmtime() 返回最近文件修改時(shí)間 getsize() 返回文件大小(以字節(jié)為單位)3.4查詢 exists() 指定路徑(文件或目錄)是否存在 isabs() 指定路徑是否為絕對(duì)路徑 isdir() 指定路徑是否存在且為一個(gè)目錄 isfile() 指定路徑是否存在且為一個(gè)文件 islink() 指定路徑是否存在

31、且為一個(gè)符號(hào)鏈接 ismount() 指定路徑是否存在且為一個(gè)掛載點(diǎn) samefile() 兩個(gè)路徑名是否指向同個(gè)文件 shutil模塊對(duì)文件的操作: 1.復(fù)制單個(gè)文件:shultil.copy(oldfile, newfle) 2.復(fù)制整個(gè)目錄樹:shultil.copytree(r".setup", r".backup") 3.刪除整個(gè)目錄樹:shultil.rmtree(r".backup") 臨時(shí)文件的操作: 1.創(chuàng)建一個(gè)唯一的臨時(shí)文件:tempfile.mktemp() -> filename 2.打開臨時(shí)文件:tempfile.TemporaryFile() 內(nèi)存文件(StringIO和cStringIO

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論