Python學習要點_第1頁
Python學習要點_第2頁
Python學習要點_第3頁
Python學習要點_第4頁
Python學習要點_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、使用命令行運行文件:import os os.chdir(“路徑”) ececfile(“文件名.py”)使用unix系統(tǒng)時,運行文件時,必須告訴python的位置在哪(#!python地址)使用input()語句可以讓窗口暫停。Python支持兩種不等于運算符:!=和<>不支持自加和自減。Python支持五種數字類型:int(有符號整數),long(長整數),bool(布爾型),float(浮點型),complex(復數)特殊數字類型:decimal:十進制浮點數。字符串:引號之間的字符集合。使用索引運算符和:得到子字符串。其中第一個字符的索引是0.最后一個字符的索引是-1.列表

2、元素:用中括號括起來,列表元素用()括起來。列表元素可以修改。元組用小括號(),元組不可修改。字典元素用大括號括起來。形式;d=key1:value1,key2:value2元組,列表,字典都是序列。標準if語句:If expression If_suite如果表達式的值為非0或者為布爾值true,則if語句執(zhí)行,否則執(zhí)行下一條語句。條件表達式不用用括號括起來。If語句也支持else語句:If expression: If_suiteelse: else_suite還支持elif(指的是else if):If expression1: If suiteelif expression2: eli

3、f_suite2:else: else_suitewhile循環(huán)while expression: while_suiteunexpected ident:格式錯誤,來自縮進。循環(huán)語句要注意縮進。注釋:#。繼續(xù):,兩種例外情況:包含小括號,中括號,花括號以及使用閉合操作符,單一語句可以跨很多行書寫。多個語句構成代碼組:。代碼組由不同的縮進分隔。同一行書寫多個語句:;。合法的python標識符:開頭必須是字母或者下劃線。其余可以是字母或者下劃線或者數字。對大小寫字母敏感。Python關鍵字:and,import,len,while,for,in,class,def,continue,del,br

4、eak,else,elif,except,exec,not,is,or,pass,try,return,yield,None,pass,from,global,finally,with,raise,assert_xxx:不用from module import*導入_xxx_:系統(tǒng)定義名字_XXX:類中的私有變量名對象屬性:標準類型;整型,長整形,浮點型,復數型,布爾型,字符串,列表,元組,字典。其它類型:Null對象(None),文件,集合/固定集合,函數/方法,模塊,類cmp(obj1,obj2)比較兩個對象大小,若obj1<obj2,則輸出-1,若否,則輸出0repr(obj)返回

5、對象的字符串str(obj)返回對象適合可讀性好的字符串表示type(obj)得到一個對象的類型,并返回相應的type對象取反:按位與:&按位或:按位異或:左移:<<右移:>>在python中,負數會被當做正數的2進制補碼處理左移左移和右移N位等同于無溢出檢查的2的N次冪對于長整數來說,位運算符使用一種經修改的2進制補碼形式,使用符號位可以無限的向左擴展按位異或:對應的位置數不同時取1在python中,abs返回給定參數的絕對值,如果參數是一個復數,那么就返回該復數的開平方。coerce():數據類型轉換函數,以一個元組的形式返回divmod():返回一個商和一

6、個余數pow():進行指數運算。round():用于對浮點數進行四舍五入運算,如果不提供小數位參數,它將返回一個與參數最接近的整數。第二個參數告訴round函數精確到小數位點的指定位置。hex():返回字符串形式表示的16進制整數oct():返回字符串形式表示的8進制整數chr():接受單字節(jié)整數值,整數值范圍是0255,返回一個字符串ord():接受一個長度為1字符串,返回其對應的整數值在bool()中,沒有_nonzero_()方法的對象的返回值為Truedecimal:十進制浮點運算類模塊array:高效數值數組模塊operator:數字運算符的函數實現(xiàn)模塊random:多種偽隨機數生成

7、器的模塊randrange():接受和range()函數一樣的參數,隨機返回range()范圍中的一個數。Uniform()和randint()一樣,返回二者之間的一個浮點數。random()和uniform()類似,只不過其下限恒等于0.0,上限恒等于1.0choice()隨機返回給定序列的一個元素。Seqind獲得下標為ind的元素。Seqind1:ind2獲得下標ind1到ind2的元素。Seq*expr序列重復expr次。Seq1+seq2:序列1+序列2。Obj1 in seq:判斷對象1位于序列中。Obj2 in seq:判斷對象不在序列中。seq*copies_int返回序列的多

8、個拷貝值。字符串格式化符號:%c:轉換成字符(ASCII碼值,或者長度為1的字符串)%r:優(yōu)先用repr()函數進行字符串轉換%s:優(yōu)先用str()函數進行轉換%d/%i:轉換成有符號的十進制數。%u:轉換成無符號的十進制數。%o:轉換成無符號八進制數。%x/%X轉換成無符號十六進制數(x/X代表轉換后的十六進制大小寫)%e/%E:轉換成科學計數法%f/%F:轉換成浮點數。%g/%G:%e和%f,%E和%F的簡寫。%:輸出%。格式化操作符輔助指令:*:定義寬度或者小數點精度;-:用作左對齊;+:在整數前面顯示加號;<sp>:在正數前面顯示空格;#:在八進制數前面顯示零(0),在十六

9、進制數前面顯示0x或者0X;0:顯示的數字前面填充0,而不是默認的空格;%:%輸出一個單一的%;(var):映射變量;m.n:m是顯示的最小總寬度,n是小數點后面的位數。cmp(str1,str2):返回字符串的ascii碼值。max(str1,str2),min(str1,str2):返回字符串的中ascii碼值對應的最大字符或最小字符。Unicode:表示文本字符串;str:表示字節(jié)字符串;basestring:表示這兩種字符串類型的父類。ASCII:美國標準信息交換碼.BMP:基本多文本平面。BOM:字節(jié)順序標記。UCS:通用字符集。u前綴告訴python后面的字符串要編碼成Unicod

10、e字符串。Pickle只支持ASCII字符串。列表類型內建函數:list.append(obj):向列表中添加一個對象。list.count(obj):返回一個對象在列表中出現(xiàn)的次數。list.extend(seq):把序列seq的內容添加到列表中l(wèi)ist.index(obj.i=0,j=len(list):返回listk=obj的k值,并且k的范圍在i<=k<j;否則引發(fā)valueerror異常。list.insert(index.obj):在索引量為index的地方插入obj。list.pop(index):刪除索引量為index的對象,并返回此對象。list.remove(o

11、bj):從列表中刪除obj對象。list.reverse():原地翻轉列表對象。list.sort(func=None,key=None,reverse=False):以指定的方式排序列表中的成員,如果func和key的參數指定,則按照指定的方式比較各個元素,如果reverse的標志被置為true,則列表以反序排列。數組:一種受限制的可變序列類型,要求所有的元素都是相同的類型。copy:提供淺拷貝和深拷貝的能力。Operator:包括函數調用形式的序列操作符。re:Perl風格的正則表達式查找。StringIO/cString:把長字符串當做文件來操作。Textwrap:用作包裹/填充文本的函

12、數。types:包含python支持的所有類型。刪除字典元素及字典:del.dict2name :刪除鍵 為name的值dict2.clear:刪除dict2中所有條目。del dict2 刪除整個dict2字典。Dict2.pop(name)刪除并返回鍵為name的條目可以通過fromkeys()來創(chuàng)建一個默認字典。避免使用內建對象名字作為變量的標識符。字典的鍵查找符:()。cmp()用于比較字典時,首先比較字典的長度,然后是比較鍵的,最后比較值。hash(obj):返回obj的哈希值。dict(container):創(chuàng)建字典的工廠函數。len(mapping):返回映射的長度。dict.c

13、opy():返回字典淺復制的一個副本。Dict.fromkeys(seq,val=None):創(chuàng)建并返回一個新字典,以seq中的元素作為字典的鍵,val作為字典中的鍵對應的初始值。dict.has_key():對字典dict中的鍵key,返回它對應的value,如果字典中不存在此鍵,則返回default的值。dict.items():返回一個包含字典中(鍵,值)對元組的列表。dict.setdefault(key,default=None):和方法set()相似,如果字典中不存在key值,由dictkey=default為它賦值。dict.update(dict2):將字典dict2的鍵-值對

14、賦給dict集合類型操作符(僅適用于可變集合):Update(=):這個更新方法是從已存在的集合中添加多個元素。&=:保留/交集更新,保留(或交集更新)操作保留與其它集合的共有成員。-=:差更新,對集合s和t進行差更新操作s-=t,差更新操作會返回一個集合,該集合中的成員s去除掉t中元素最后剩余的元素。此法和difference.update()等價。=:對集差分更新,對集合s和t進行對稱差分更新操作(s=t),對稱差分操作會返回一個集合,該集合中成員僅是原集合s或者是t中的成員。此法和symmetric.difference_update()等價。pass語句相當于沒做任何事。Ite

15、r():調用迭代器。Iter(func,sentinel):如果傳遞兩個參數給iter(),它會重復的調用func,直到迭代器的下個值等于sentinel。列表解析表達式;expr for iter_var in iteration內建函數的基本語法:file_object=open(file_name,access_mode=r,buffering=-1)保留行分隔符:當使用輸入方法如read()或者readline()從文件中讀取行時,python并不會刪除行結束符,這個操作被留給了程序員。seek():可以在文件中移動文件指針到不同的位置。行分隔符之間的差異:在POSIX(Unix系列或

16、Mac OS X)系統(tǒng)上,行分隔符是換行分隔符NEWLINE(/n)字符,在舊的的MacOS下是RETURN(/r),而DOS和win32系統(tǒng)下結合了兩者(/r/n)。os模塊屬性描述:linesep:用于在文件中分隔行的字符串。sep:用于分隔文件路徑名的字符串pathsep:用于分隔文件路徑的字符串。Curdir:當前工作目錄的字符串。pardir:父目錄字符串名稱。文件內建方法:file.close():關閉文件。file.fileno():返回文件的描述符。file.flush():刷新文件的內部緩沖區(qū)。file.isatty():判斷文件是不是一個類tty設備。file.next()

17、:返回文件的下一行。file.read(size=-1):從文件讀取size個字節(jié),當未給定size或者負值的時候,讀取剩余的所有字節(jié),然后作為字符串返回。file.readlines(sizhint=0):讀取文件的所有行并作為一個列表返回file.xreadlines():用于迭代,可以替換readlines()的一個更高效的方法。file.seek(off.whence=0):在文件中移動文件指針,從whence(0代表文件起始,1代表文件當前位置,2代表文件末尾)偏移off字節(jié)。file.tell():返回當前在文件中的位置。file.truncate(size=file,tell()

18、:截取文件到最大size字節(jié),默認為當前文件位置。file.write(str):向文件寫入字符串。file.writelines(seq):向文件中寫入字符串序列;seq應該是一個可以返回字符串的可迭代對象。文件內建屬性:file.closed:True表示文件已被關閉,否則為false。file.encoding:文件所使用的編碼-當unicode字符串被寫入數據時,它們將自動使用file.encoding轉換為字節(jié)字符串;若file.encoding為None時使用系統(tǒng)默認編碼。file.mode:文件打開時使用的訪問模式。:文件名。file.newlines:未讀取到

19、行分隔符是為None,只有一種行分隔符時為一個字符串,當文件有多種類型的行分隔符時,則為一個包含所有當前所遇到的行結束符的列表。File.softspace:為0表示在輸出一數據后,要加上一個空格符,1表示不加。sys.argv是命令行參數的列表。len.(sys.argv)是命令行參數的個數。OS模塊的文件/目錄訪問函數:mkfifo()/mknod():創(chuàng)建命名管道/創(chuàng)建文件系統(tǒng)節(jié)點。Remove()/unlink():delete file 刪除文件。rename()/renames():重命名文件。stat()返回文件信息。syslink():創(chuàng)建符號鏈接。utime():更新時間戳。

20、tmpfile():創(chuàng)建并打開(w+b)一個新的臨時文件。walk():生成一個目錄樹下的所有文件名。chdir():/fchdir():改變當前工作目錄/通過一個文件名改變當前工作目錄。chroot():改變當前進程的根目錄。listdir():列出指定目錄的文件。getcwd()/getcwdu():得到當前工作目錄/功能相同,但得到一個unicode對象。mkdir()/makedirs():創(chuàng)建目錄/創(chuàng)建多層目錄。rmdir()/removedirs():刪除目錄/刪除多層目錄。access():檢驗權限模式。chmod():改變權限模式。chown()/lchown():改變owne

21、r和groupID/功能相同,但不跟蹤鏈接。unmask():設置默認權限模式。open():文件操作系統(tǒng)open。read()/write():根據文件描述符讀取/寫入數據。dup()/dup2():復制文件描述符號/功能相同,但是是復制到另一個文件描述符。makdev():從major和minor設備號創(chuàng)建一個原始設備號。major()/minor():從major和minor設備號創(chuàng)建一個原始設備號。os.path模塊中路徑名訪問函數:basename():去掉目錄路徑,返回文件名。dirname():去掉文件名,返回目錄路徑。join():將分離的各部分組合成一個路徑名。split()

22、:返回(dirname(),basename())元組。splitdrive();返回(drivename,pathname)元組。splittext():返回(返回filename,extension)元組。信息:getatime();返回最近訪問時間。getctime():返回文件創(chuàng)建時間。getmtime():返回文件最近修改時間。getsize():返回文件大小。查詢:exists():指定(文件/目錄)是否存在。isabs():指定路徑是否是絕對路徑。isdir():指定路徑是否存在且為一個目錄。isfile():指定路徑是否存在且為一個文件。islink():指定路徑是否存在且為一

23、個符號鏈接。ismount():指定路徑是否存在且為一個掛載點。samefile():兩個路徑是否指向同個文件。文件相關模塊:base64:提供一個二進制字符串和文本字符串的編碼/解碼操作。binascii:提供二進制和ASCII編碼的二進制字符串間的編碼/解碼操作。bz2:訪問BZ2格式的壓縮文件。csv:訪問csv文件。filecmp:用于比較目錄和文件。fileinput:提供多個文本文件的行迭代器。getopt/optparse:提供命令行參數的解析/處理。glob/fnmatch:提供了Unix樣式的通配符匹配的功能。gzip/zlib:讀寫了GNU zip(gzip)文件(壓縮需要

24、zlib模塊)。shutil:提供高級文件訪問功能。c/StringIO:對字符串對象提供類文件接口。tarfile:讀寫TAR歸檔文件,支持壓縮文件。tempfile:創(chuàng)建一個臨時文件。uu:格式的編碼和解碼。zipfile:用于讀寫zip歸檔文件的工具。處理異常的語法格式:try: try_suiteexcept Exception1: suite_for_Exception1except(Exception2,Exception4,Exception4): suite_for_exception_2_3_and_4exception Exception5,Argument5: suite

25、_for _Exception5_plus_argumentexception(Exception6,Exception7),Argument67: suite_for_Exception6_and_7_plus_argumentexcept: suite_for_all_other_exceptioaselse:no_exceptions_detected_suitefinally: always_execute_suitewith語句用法:with context_expr as var: with_suitedef語句:def function_name(arguments): func

26、tion_documentation_stringfunction_body_suite.或者:def hellosomeone(who):return a salutary string customized with inputreturnhello+str(who)函數裝飾器:decorator(dec_opt_args) def fun2Bdecorated(func_opt_args):匿名函數語法:lambdaarg1,arg2,argN:expression模塊添加:syspath.append()import語句模塊順序:標準庫模塊,第三方模塊,自定義模塊。特殊的類屬性:C._

27、name_:類C的名字。C._doc_:類C 的文檔字符串C._bases_:類C 的所有父類組成的元組C._dict_:類C的屬性。C._module_:類C定義所在的模塊。C._class_:實例C對應的類。內建函數dir():查看實例屬性。python中下表橫線由兩個小橫線組成使用類屬性修改類本身issubclass(sub,sup):布爾函數判斷一個類是另一個類的子類或者子孫類。isinstance(obj1,obj2):布爾函數判斷一個對象是否是另一個給定類的實例hasattr():決定一個對象是否有一個特定的屬性。getattr():取得對象的屬性。setattr():設置對象的屬

28、性。delattr():從一個對象中刪除屬性。super(type,obj=none):返回一個表示父類類型的代理對象;如果沒有傳入obj,則返回的super對象是非綁定的;反之,如果obj是一個type,issubclass(obj,type)必為True;否則,isinstance(obj,type)就必為True。vars(obj=None):返回obj的屬性及其值的一個字典;如果沒有給出obj,vars()就顯示局部名字空間字典(屬性及其值),也就是locals()?;径ㄖ菩虲._init_(self,arg1,):構造器(帶一些可選的參數)。C._new_(self,arg1,):

29、構造器(帶一些可選的參數),通常用在設置不變數據類型的子類。C._del_(self):解構器。C._str_(self):可打印的字符輸出;內建str()和print()語句。C._repr_(self):運行時發(fā)字符串輸出,內建repr()和操作符。C._unicode_(self):Unicode字符串輸出,內建unicode()C._call_(self,*args):表示可調用的實例。C._nonzero_(self):為obj定義False值,內建bool()C._len_(self):長度可以定制類的特殊方法:對象(值)的比較:C._cmp_(self,obj)對象比較,內建cm

30、p()C._it_(self,obj):不大于或小于C._gt_(self,obj):不小于或大于C._eq_(self,obj):等于或不等于屬性:C._getattr(self,attr):獲取屬性;內建getattr();僅當屬性沒有找到時調用屬性。C._setattr_(self,attr):設置屬性。C._delattr_(self,attr):刪除屬性C._getattribute_(self,attr):獲取屬性,內建getattr(),總是被調用。C._get_(self,attr):(描述符)獲取屬性C._set_(self,attr,val):(描述符)設置屬性C._del

31、ete_(self,attr):(描述符)刪除屬性定制類/模擬類型數值類型:二進制操作符:C._*add_(self,obj):加;+操作符C._*sub_(self,obj):減;-操作符C._*mul_(self,obj):乘;*操作符C._*div_(self,obj):除;/操作符C._*truediv_(self,obj):True除;/操作符C._*floordiv_(self,obj):floor除;/操作符C._*mod_(self,obj):取模/取余:%操作符C._*divmod_(self,obj):除和取模,內建divmod()C._*pow_(self,obj,mod

32、):乘冪;內建pow():*操作符C._*lshift_(self,obj):左移位;<<操作符可定制類的特殊方法:定制類/模擬類型:數值類型:二進制操作符C._*rshift_(self,obj):右移,>>操作符C._*and_(self,obj):按位與,&操作符C._*or_(self,obj):按位或,丨操作符C._*xor_(self,obj):按位異或,操作符數值類型:一元操作符C._neg_():一元負C._pos_():一元正C._abs_():絕對值,內建abs()C._invert_():按位求反,操作符數值類型:數值轉換C._comple

33、x_(self,com):轉換為complex(復數),內建complex()C._int_(self):轉為int;內建int()C._long_(self):轉為long;內建long()C.float(self):轉為float;內建float()數值類型:基本表示法C._oct_(self):八進制表示,內建oct()C._hex_(self):十六進制表示;內建hex()數值類型:數值壓縮C._coerce_(self,num):壓縮成同樣的數值類型C._index_(self):在有必要時,壓縮可選的數值類型為整型(比如:用于切片索引)定制類的特殊方法:序列類型:C._len_(s

34、elf):序列中項的數目C._getitem_(self):得到單個序列元素C._setitem_(self,ind):設置單個序列元素C._delitem_(self,ind):刪除單個序列元素C._getslice_(self,ind1,ind2):得到某個片段C._setslice_(self,ind1,ind2):設置某個片段C._delslice_(self,ind1,ind2):刪除某個片段C._contains_(self,val):測試序列成員;內建in關鍵字C._*add_(self,obj):串聯(lián);操作符C._*mul_(self,obj):重復;*操作符、C._iter_

35、(self):創(chuàng)建迭代類;內建iter()映射類型:C._len_(self):mapping中項的數目C._hash_(self):散列(hash)函數值C._getitem_(self,key):得到給定鍵(key)的值C._setitem_(self,key,val)設置給定鍵(key)的值C._delitem_(self,key):刪除給定鍵(key)的值C._missing_(self,key):給定鍵如果不存在字典中,則提供一個默認值函數是非數據描述符。property()內建函數:property(fget=None,fset=None,fdel=None,doc=None)ud

36、m._doc_:文檔字符串。udm._name_:字符串類型的方法名字。udm._module_:定義udm的模塊名字。udm.im_class:方法相關聯(lián)的類。udm.im_func:方法的函數對象。udm.im_self:如果綁定的話為相關聯(lián)的實例,如果是非綁定,那么為要求udm的類。bim._doc_:文檔字串。bim._name_:字符串類型的函數名字。bim._self_:綁定的對象。callable(obj):如果obj能夠被調用,返回true,否則返回falsecompile(string,file,type):從type中創(chuàng)建代碼對象,file是存放代碼的地方(通常設為)eva

37、l(obj,glo-bals=globals(),locals=locals():對obj求值,obj是已編譯為代碼對象的表達式,或是一個字符串表達式,可以給出全局/和局部的名字空間。exec obj:執(zhí)行obj,單一python語句或者語句的集合,也就是說格式是代碼對象或者字符串;obj也可以是一個文件對象input(prompt=):等同于evalos模塊函數:system(cmd):執(zhí)行程序cmd(字符串),等待程序結束,返回退出代碼。fork():創(chuàng)建一個和父進程并行的子進程通常來說和函數exec*()一起使用,返回兩次,一次給父進程,一次給子進程。execl(file,arg0,ar

38、g1,):用參數列表,用參數列表arg0,arg1等執(zhí)行文件。execv(file,arglist):除了使用參數向量列表,其余與execl()相同。execle(filr,arg0,arg1,env):和execl相同,但提供了環(huán)境變量字典env。execle(file,arglist,env):除了帶有參數向量列表,其它的和execl()相同。execlp(cmd,arg0,arg1):與execl相同,但是在用戶搜索路徑下搜索完全的文件路徑名。execvp(cmd,agrlist):除了帶有參數向量列表,其余與execlp()相同。execlpe(cmd,arg0,arg1,env):和execlp相同,但提供了環(huán)境變量字典env。execvpe(cmd,arglist,env):和execvp相同,但提供了環(huán)境變量字典env。spawn*(mode,file,args,env):spawn*()在一個新的進程中執(zhí)行路徑,args作為參數,也許還有環(huán)境變量字典env,mode(模式)是個顯示不同操作模式的魔術。wait():等待子進程完成。waitpid(pid,options):等待指定的子進程完成

溫馨提示

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

評論

0/150

提交評論