匿名函數、文件操做

 

nums = [1,3,12,23,42,31,1123]函數

nums.sort()         #對列表從小到大排序排序

nums.sort(reverse = True)   #對列表從大到小排序rem

nums.reverse()     #倒序,逆序字符串

 

infors = [{"name":"laowang","age":10},{"name":"xiaoming","age":20},{"name":"banzhang","age":15}]get

infors.sort(key=lambda x:x['name'])input

print(infors)it

 

 

def test(x,y,func):io

    z = func(x,y)test

    print(z)import

    return  z

num = test(11,22,lambda x,y:x+y)

print(num)

 

 

def test(x,y,func):

    z = func(x,y)

    return  z

func_new = input("請輸入一個匿名函數:")          #   lambda x,y:x+y

func_new = eval(func_new)          #將func字符串轉化爲一個表達式

num = test(11,22,func_new)

print(num)

 

 

交換兩個變量的方式

a = 11

b = 22

# 方法一

temp = a

a = b

b = temp

#方法二

a = a + b

b = a - b

a = a - b

 

 

a = 100               不可變類型

a = [100]             可變類型      

def func(num):

    num += num

    print(num)

func(a)

print(a)

 

 

 

f = open("test.py","r")   # 只讀。文件必須存在
f = open("test.py","w")  # 只寫。文件能夠不存在,存在則刪除。
f = open("test.py","a")   # 追加。若是不存在建立,存在追加。
文本文件:
二進制文件:
f = open("test.py","rb")   # 以二進制方式打開,只讀。文件必須存在
f = open("test.py","wb")  # 以二進制方式打開,只寫。文件能夠不存在,存在則刪除。
f = open("test.py","ab")   # 以二進制方式打開,追加。若是不存在建立,存在追加。
f = open("test.py","r+")   # 讀寫。文件必須存在
f = open("test.py","w+")  # 讀寫。文件能夠不存在,存在則刪除。
f = open("test.py","a+")   # 讀寫。若是不存在建立,存在追加。
f = open("test.py","rb+")   # 以二進制方式打開,讀寫。文件必須存在
f = open("test.py","wb+")  # 以二進制方式打開,讀寫。文件能夠不存在,存在則刪除。
f = open("test.py","ab+")   # 以二進制方式打開,讀寫。若是不存在建立,存在追加。
 

f = open("test1.py","r")
f.read(1)    #每次只讀一個字節
f.read()      #讀出全部
f.close()
f = open("test1.py","w")
f.write("haha")
f.close()             #保證文件寫入硬盤
 
#一、獲取用戶要複製的文件名
old_file_name = input("請輸入要複製的文件名")
#二、打開要複製的文件
old_file = open(old_file_name,"r")
#三、新建一個文件
position = old_file_name.rfind(".")
new_file_name = old_file_name[:position]+"[復件]"+old_file_name[position:]
new_file = open(new_file_name,"w")
#四、從舊文件中讀取數據,而且寫入到新文件中
#content = old_file.read()
#new_file.write(content)
while True:
    content = old_file.read(1024)
    if len(content)== 0:
        break
    new_file.write(content)
#五、關閉2個文件
old_file.close()
new_file.close()

f = open("test.py")
f.readline()               # 每一行讀一次
f.readlines()           #讀出全部的行,用列表存起來。
讀大文件禁止使用read和readline,用循環,
while True:
    content = old_file.read(1024)
    if len(content)== 0:
        break
    new_file.write(content)

文件的定位讀寫:
f = open("test.py")
f.seek(2,0)     #第一個參數是偏移量,2表示從文件開頭向後跳2個字節;第二個參數0表示文件開頭,1表示當前操做的位置,2表示文件末尾。
f.readline()
f.read()       #從下一行讀
f.read()      #  獲得"",由於已經到文件尾,讀完數據。
f.seek(0,0)      # 從新回到文件頭
f.read()          #全部的東西所有讀出
f.tell()     #當前位置
f.close()
 
文件的重命名:
import os
os.rename("xx.txt","yyy.txt")   #文件的重命名
os.remove("yyy.ttt")                #文件的刪除
os.mkdir("test")    #建立文件夾
os.rmdir("test")    #刪除文件夾
os.getcwd()      #返回當前操做的絕對路徑
open()    #支持相對路徑,絕對路徑
os.chdir()    #改變默認目錄
os.listdir("./")    #獲取當前路徑的全部文件名
 
批量重命名:
#一、獲取要重命名的文件夾名字 folder_name = input("請輸入要重命名的文件夾:") #二、獲取制定的文件夾中的全部  文件名字 file_names = os.listdir(folder_name) os.chdir(folder_name)        #改變默認操做路徑 #三、重命名 for name in file_names:     print(name)     old_file_name = folder_name+"/"+name     new_file_name = folder_name+"/"+[京東出品]-"+name     os.rename(old_file_name,new_file_name)
相關文章
相關標籤/搜索