python--匿名函數、文件操作
阿新 • • 發佈:2017-12-31
排序。 hang 創建 lose key move 返回 一次 blog
一、匿名函數
- 語法:
sum = lambda arg1, arg2: arg1 + arg2
#調用sum函數
print "Value of total : ", sum( 10, 20 ) #結果為:30
print "Value of total : ", sum( 20, 20 ) #結果為:40
應用場合
- 作為函數的實參
def fun(a, b, opt): print("a =", a) print("b =", b) print("result =", opt(a, b) fun(1, 2, lambda x, y:x +
- 作為python內置函數的參數。
stus = [ {"name":"zhangsan", "age":18}, {"name":"lisi", "age":19}, {"name":"wangwu", "age":17} ] #將以上列表按姓名排序。 stus.sort(key = lambda x:x[‘name‘])
二、文件
打開文件:
- 使用open()函數。
file = open(‘test.txt‘, ‘r‘)
訪問模式 說明 r 以只讀方式打開文件。文件的指針將會放在文件的開頭。這是默認模式。 w 打開一個文件只用於寫入。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 a 打開一個文件用於追加。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該文件不存在,創建新文件進行寫入。 rb 以二進制格式打開一個文件用於只讀。文件指針將會放在文件的開頭。這是默認模式。 wb 以二進制格式打開一個文件只用於寫入。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 ab 以二進制格式打開一個文件用於追加。如果該文件已存在,文件指針將會放在文件的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該文件不存在,創建新文件進行寫入。 r+ 打開一個文件用於讀寫。文件指針將會放在文件的開頭。 w+ 打開一個文件用於讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 a+ 打開一個文件用於讀寫。如果該文件已存在,文件指針將會放在文件的結尾。文件打開時會是追加模式。如果該文件不存在,創建新文件用於讀寫。 rb+ 以二進制格式打開一個文件用於讀寫。文件指針將會放在文件的開頭。 wb+ 以二進制格式打開一個文件用於讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創建新文件。 ab+ 以二進制格式打開一個文件用於追加。如果該文件已存在,文件指針將會放在文件的結尾。如果該文件不存在,創建新文件用於讀寫。 關閉文件:
- 使用close()函數
file.close()
讀取文件:
- 使用read()函數
file.read() file.read(1) #每次只讀一個字節 file.read(2) #每次讀兩個字節
使用readlines()函數:readlines可以按照行的方式把整個文件中的內容進行一次性讀取,並且返回的是一個列表,其中每一行的數據為一個元素
使用readline()函數:只讀取文件中的一行
寫入內容:
使用write()函數
python file.write(‘12345‘)
- 定位讀寫:
- 獲取當前文件讀取的位置:tell()
- 定位到某個位置:seek(offset, from)
- offset:偏移量
- from:方向
- 0:表示文件開頭
- 1:表示當前位置
- 2:表示文件末尾
- 文件的重命名:rename():
import os
os.rename(‘test.txt‘, ‘1.txt‘)
os.remove(‘1.txt‘)
os.mkdir(‘test‘)
os.rmdir(‘test‘)
os.getcwd()
os.chdir(‘../‘)
os.listdir(‘./‘)
刪除文件:remove()
- 創建文件夾:mkdir()
- 刪除文件夾:rmdir()
- 獲取當前目錄:getcwd()
- 改變默認目錄:chdir()
獲取目錄列表:listdir()
python--匿名函數、文件操作