nums = [111,,5,2,5,,6,33,55,33,5226,526,5]
nums.sort() # 對列表nums的值從小到大排序
nums.sort(reverse=true) # 先對列表nums的值從小到大排序,然後反轉,相當於從大到小排序
nums.reverse() # 對列表nums反轉
# 如果列表的的元素值是字典不數字,則應該通過以下方式進行排序
infors = [,,]
infors.sort(key=lambda x:x['name']) # x代表列表中的元素
def
test
(a,b,func):
result = func(a,b)
return result
num = test(11,22,x,y:x+y)
print(num)
以下演示python2def
test
(a,b,func):
'''python2中input輸入的內容會直接執行'''
result = func(a,b)
return result
func_new = input("請輸入乙個函式:") # 執行指令碼,可輸入 x,y:x*y x,y:x-y 檢驗結果
num = test(a,b,func_new)
print(num)
以下演示python3def
test
(a,b,func):
'''python3中input輸入的內容為帶雙引號的字串'''
result = func(a,b)
return result
func_new = input("請輸入乙個函式:") # 執行指令碼,可輸入lambda x,y:x*y 或 lambda x,y:x-y 檢驗結果
func_new = eval(func_new) # eval() 會把其中的雙引號的字串的雙引號去掉
num = test(a,b,func_new)
print(num)
a = 4
b = 5
# 第一種
# a = a+b
# b = a-b
# a = a-b
# 第二種
# a,b = b,a
a = 100
# 不可變的資料型別
deftest
(num):
num += num
print(num)
test(a) # 200
print(a) # 100
a = [100] #可變的資料型別
deftest
(num):
# num += num
num = num + num
print(num)
#test(a) # [100,100]
#print(a) # [100,100]
test(a) # [100,100] # num = num + num 相當於等號右邊的元組賦值給等號左邊的臨時變數num
print(a) # 100
檔案的開啟、關閉f = open('test.txt','w') # 開啟檔案
f.write("hello")
f.write("\nworld") # \n表示換行
f.close() # 關閉檔案
f = open('test.txt','r') # 開啟檔案
f.read(1) # 留空則全讀出來,1表示每次都乙個位元組
f.close() # 關閉檔案
test.py –> test[副本].py# 1、獲取使用者要複製的檔名
old_file_name = input("請輸入要複製的檔名:") # "test.py"
# 2、開啟要複製的檔案
old_file = open(old_file_name,'r')
# 3、新建乙個檔案
postion = old_file_name.rfind('.') # 4
new_file_name = old_file_name[:postion] + [副本] + old_file_name[postion:]
new_file = open(new_file_name,'w')
# 4、從舊檔案中獲取資料並寫入新檔案
content = old_file.read()
new_file.write(content)
# 5、關閉2個檔案
old_file.close()
new_file.close()
f = open("test.1.py")
f.read() # 讀檔案中的一行 返回字串
# 處理大檔案應該多次讀
while true:
content = f.read(1024) # 讀檔案中1024位元組 返回字串
iflen(content) == 0:
break
f.readlines() # 讀檔案中的所有行 返回列表,每一行為列表的乙個元素
f = open("test.py")
f.seek(2,0)
# 第乙個引數代表從跳幾個位元組開始讀
# 第二個引數:0檔案開頭、1當前指標位置、2檔案末尾
f.readline() # 返回檔案開頭一行跳過兩個位元組的內容
f.read() # 返回下一行以後所有內容
f.tell() # 獲取檔案指標當前位置
import os
open('file_name',"w") # 當前目錄建立檔案
open('../file_name',"w") # 上級目錄建立檔案
os.rename('old_file_name','new_file_name') # 檔案重新命名
os.remove('file_name') # 刪除檔案
os.mkdir('fd') # 建立資料夾
os.rmdir("fd") # 刪除資料夾
os.getcwd() # 返回當前長在操作的絕對路徑
os.listdir("./") # 返回當前路徑下的所有檔名字串組成的列表
os.chdir("../") # 改變預設目錄
open('file_name',"w") # 此時在上級目錄建立檔案
# 第一種
# 1、獲取要重新命名的資料夾的名字
folder_name = input("請輸入要重新命名的資料夾:")
# 2、獲取指定的資料夾中的所有的檔案名字
# 先從當前目錄下找要重新命名的檔名,獲取其中的檔案,然後跳入相應的資料夾修改檔名
file_names = os.listdir(folder_name) # 直接餵給函式乙個檔名則從相對目錄開始找
os.chdir(folder_name) # 跳入相應的資料夾
# 3、重新命名
forname
in file_names:
print(name)
os.rename(name,"[new]-" + name)
# 第二種
# 1、獲取要重新命名的資料夾的名字
folder_name = input("請輸入要重新命名的資料夾:")
# 2、獲取指定的資料夾中的所有的檔案名字
# 先從當前目錄下找要重新命名的檔名,獲取其中的檔案,然後跳入相應的資料夾修改檔名
file_names = os.listdir(folder_name) # 直接餵給函式乙個檔名則從相對目錄開始找
#os.chdir(folder_name) # 跳入相應的資料夾
# 3、重新命名
forname
in file_names:
print(name)
old_file_name = folder_name + "/" + name
new_file_name = folder_name + "/" + "[new]" + name
os.rename(old_file_name,new_file_name)
python基礎 匿名函式
lambda匿名函式可以實現簡單的功能 sum lambda x,y x y print sum 4,2 結果為6def values a,b,fun print fun a,b values 11,22,lambda x,y x y 結果為33大資料要用到的三個重要函式 filter函式 filt...
Python基礎 匿名函式
當我們在傳入函式時,有些時候,不需要顯式地定義函式,直接傳入匿名函式更方便。在python中,對匿名函式提供了有限支援。還是以map 函式為例,計算f x 的函式外,還可以直接傳入匿名函式 print list map lambda x x x,1,2,3,4,5,6,7,8,9 輸出 1,4,9,...
python基礎 匿名函式
匿名函式的關鍵字為 lambda 冒號前面是形參 冒號後面是返回值 def fun args,kwargs return args,kwargs print fun 1,2,3,4,5 上面三行可以用下面以行代替 print lambda args,kwargs args,kwargs def ad...