Python8--匿名函數、變量交換
1
#匿名函數
2
nums = [123,12,342,23,543,45,34,4,4,5,34,345]
3
nums.sort()
# 排序
4
print(nums)
5
6
nums.reverse()
# 倒序
7
print(nums)
8
9
infors = [{'name':'jack','age':10},{'name':'ben','age':20},{'name':'alex','
age':16}]
10
infors.sort(key =lambda
x:x['name'])
# 按‘name’的值來比較
11
print(infors)
12
13 def
test(a,b,func):
14
result = func(a,b)
15
return result
16
17
num = test(12,13,lambda
x,y:x+y) # x指向12 ,y指向13,返回 x+y
18
print(num)
19
20 def
test2(a,b,func):
21
result = func(a,b)
22
return result
23
24
func_new =
input('請輸入一個匿名函數:\n')
# 輸入一個匿名函數,如 lambda x,y
:x*y
25
func_new =
eval(func_new)
26
num = test2(123,234,func_new)
27
print(num)
1
# 兩個變量的交換
2
a =
1
3
b =
2
4
print('a=%d,b=%d'%(a,b))
5
6
#第一種
7
c =
0
8
c = a
9
a = b
10
b = c
11
print('a=%d,b=%d'%(a,b))
12
13
#第二種
14
a = a+b
15
b = a-b
16
a = a-b
17
print('a=%d,b=%d'%(a,b))
18
19
#第三種
20
a,b = b,a
21
print('a=%d,b=%d'%(a,b))
22
23
n = [10]
# 列表是可變數據類型 最後值都是[10,10] ,若n= 10 則不可改變
24
def
test(num):
25
num +=num
26
# num = num + num # 輸出的值爲[10.10],但不會改變n的值
27
print(num)
28
test(n)
29
print(n)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.