一、Python過程型程序設計
# yum install readline-devel # tar xf Python-2.7.6.tar.xz # ln -sv Python-2.7.6 python27 # cd python27 # ./configure --prefix=/usr/local/python27 # make && make install # tar xf ipython-1.2.1.tar.gz # cd ipython-1.2.1 # /usr/local/python27/bin/python27 setup.py build # /usr/local/python27/bin/python27 setup.py install
函數創建和引用
二、python對象類型及其運算
程序中存儲的所有數據都是對象
每個對象都有一個身份,一個類型和一個值
實例被創建之后,其身份和類型就不可改變
如果某個對象包含對其他對象的引用,則將其稱之為容器
class:通常在自定義類型是使用
str(),repr()和format():將非字符型數據轉換為字符 str:做對象序列化的結果,強制轉換 repr:做精確轉換,不轉換元對象 int():轉換成整數 float():轉換成浮點型 list(s):將字串s轉換成列表 tuple(s):將字串s轉換成元組 set(s):將字串s轉換為集合 frozenset(s):將字串s轉換為不可變集合 dict(d):根據指定的鍵值對創建字典,其中d必須是(key,value)的元組序列 chr(x):將整數轉換為字符 ord(x):將字符轉換為整數值 hex(x):將整數轉換成16進制字符 bin(x):將整數轉換成2進制字符 oct(x):將整數轉換成8進制字符
對象自有的操作
d1.iteritems:返回一個迭代器對象
s[i]: s[i:j]:切片 s[i:j:stride] len(s):長度 max(S) sum(s) all(S):所有為true any(s):任意項為true s1 + s2:連接 s1 * n:重復 obj in s1:成員關系判斷 obj not in s1
s1[index] = value:元素賦值 s1[i:j] =t :切片賦值 del s1[index]:刪除元素 del s1[i:j]:刪除求片 del s1[i:j:stride]
三、Python的表達式和語句
四、文件對象:
var_name = open (file_name[mode,[bufsize]])
chdir():切換工作目錄 chroot():設定當前進程的根目錄 listdir():列出指定目錄下的所有文件名 mkdir():創建指定目錄 makedirs():創建多級目錄 getcwd():獲取工作目錄 rmdir():刪除目錄 removedirs():刪除多級目錄
mkfifo():創建管道 mknod():創建設備文件 remove():刪除文件 unlink():刪除鏈接文件 rename():重命名 stat():放回文件的狀態信息 symlink():創建符號鏈接文件 utime():更新時間戳 tmpfile():創建并打開(w+b)一個新的臨時文件 walk():創建目錄樹 訪問權限相關的
access():檢驗某個用戶或用戶組的權限模式 chmod():修改權限 chown():修改屬主和屬組 umask():設置默認權限模式 文件描述符:
open():底層操作系統的open() read(): write(): 設備文件:
makedev(): major():獲取主設備號 minor():獲取次設備號
import os.path basename():路徑基名 dirname():路徑目錄名 join():整合文件名 split():返回dirname(),basename()元組 splitext():返回(filename,extension)元組 信息:
getatime():最近訪問時間 getctime() getmtime() getsize():返回文件的大小 查詢
exists():判斷指定文件是否存在 isabs():判斷指定的路徑是否為絕對路徑 isdir():是否為目錄 isfile():是否為文件 islink():是否為符號鏈接 ismount():是否為掛載點 samefile():兩個路徑是否指向了同一個文件 練習:判斷文件是否存在,存在則打開,讓用戶通過鍵盤反復輸入多行數據追加保存至此文件中
#!/usr/bin/python import os import os.path filename=raw_input('plz a file name:') if os.path.isfile(filename): ? ? openname= open(filename,'a+') while True: ? ? newline=raw_input('plz a line:') ? ? if newline == 'q' or newline =='quit': ? ? ? ? break ? ? else: ? ? ? ? openname.write(newline+'\n') openname.close()
marshal
五、python的正則表達式:
. [.....] [^.....] ?:匹配字符0次或1次 +:匹配自符1次以上 {m} {m,n} {0,n} {m,} ^:行首錨定 $ pat1|pat2 (.....):分組 \b [0-9]:\b:任意數 [0-9a-zA-Z]:\w,\W對\w取反 \s:任意空白字符,[\n\t\f\v\r],\S \nn:后向引用 (*|+|?|{})?:使用非貪婪模式
六、Python函數
效果:只能返回一次值,終止函數的執行
無return 默認 None; ? ? return返回值:如果只有一個則返回本身,多個值則為元組形式
? ? ? ? 使用**:收集關鍵字參數
def deco(func): ? ? def wrapper(): ? ? ? ? print "please say something: " ? ? ? ? func() ? ? ? ? print "no zuo no die" ? ? return wraaper
@deco def show(): ? ? return "somethings."
原創文章,作者:nene,如若轉載,請注明出處:http://www.www58058.com/91022