python程式設計 從資料分析到資料科學 摘抄及拓展
12.2 關於else的用法:
a =[1
,3,5
,7,2
,4,6
,8]b =
sorted
(a, reverse=0)
#reverse為0從小到大排序,預設值為0
print
(list
(b))
# [1, 2, 3, 4, 5, 6, 7, 8]
print
(a)# [1, 3, 5, 7, 2, 4, 6, 8]
a.sort(
)print
(a)# [1, 2, 3, 4, 5, 6, 7, 8]
2.兩個列表的並列相加計算
mylist1 =[1
,2,3
,4,5
,6,7
,8,9
]mylist2 =[11
,12,13
,14,15
,16,17
,18,19
]ans =
[i + j for i, j in
zip(mylist1, mylist2)
]print
(ans)
# [12, 14, 16, 18, 20, 22, 24, 26, 28]
a =
[i for i in
range(10
)]print
(a)# [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
b =[
type
(i)for i in
[true
,1.0,2
+3j,]
]print
(b)#[, , , ]
c =[
'input%d.txt'
% i +
'dd%d'
% i for i in
range(5
)]print
(c)# ['input0.txtdd0', 'input1.txtdd1', 'input2.txtdd2', 'input3.txtdd3', 'input4.txtdd4']
a =[1
,2,3
,4,4
,5,6
,7]a =
[x for x in a if x !=4]
print
(a)# [1, 2, 3, 5, 6, 7]
a =[1,
2,3,
4,5,
6,7,
8,9,
10]a =list
(filter
(lambda x: x %2==
0, a)
)print
(a)# [2, 4, 6, 8, 10]
mylist =[2
,3,5
,6,7
,3,2
]print
(list
(enumerate
(mylist)))
# [(0, 2), (1, 3), (2, 5), (3, 6), (4, 7), (5, 3), (6, 2)]
mydict =
dict
((value, i)
for i, value in
enumerate
(mylist)
)print
(mydict)
# 過程:2:0,3:1 被後來追加的 2:6 3:5覆蓋
#
1.join
print
('.'
.join(
'hello'))
# h.e.l.l.o
2.strip:去除字串的左右空白
a =
' hello world '
print
(a.strip())
# 'hello world'
print
(a)# ' hello world '
3.ord和chr 計算對應的unicode編碼/對應的字元
4.str.upper() 大寫
5.應用
str1 =
['abc'
,'aaba'
,'abefg'
,'bb'
,'cc'
]str1.sort(
)print
(str1)
# ['aaba', 'abc', 'abefg', 'bb', 'cc']
str1.sort(key=
lambda x:
len(
list
(x))
)print
(str1)
# ['bb', 'cc', 'abc', 'aaba', 'abefg']
str1.sort(key=
lambda x:
len(
set(x)))
print
(str1)
# ['bb', 'cc', 'aaba', 'abc', 'abefg']
a =
b =print
(< a)
# true
print
(a | b)
# 合集
print
(a & b)
# 交集
print
(a - b)
# 差集
print
(a ^ b)
# 對稱差分
print
(.issubset(a)
)# true 是否為子集
print
(.issuperset(a)
)# true 是否為父集
c =frozenset()
# 不可變物件,資料分析和資料科學專案中通常採用frozenset
def
func()
:'''根據提示來輸出我'''
j =0print
('hello world'
)def
func2
(x):
print
(f' is from func2'
)return func2
func(
)# hello world
func()(
2)# hello world
# 2 is from func2
x =
0def
func()
:global x
x =1print
(x)
func()#1
print
(x)#1
x =0
deffunc()
: x =
2def
fun2()
:nonlocal x
x =3print
(f'fun2的x是 '
)print
('func的x是'
, x)
return fun2
func()(
)print
('全域性的x是'
, x)
'''func的x是 2
fun2的x是 3
全域性的x是 0
'''
(從python3開始不作為內建函式)
reduce() 函式會對引數序列中元素進行累積。
函式將乙個資料集合(鍊錶,元組等)中的所有資料進行下列操作:用傳給 reduce 中的函式 function(有兩個引數)先對集合中的第 1、2 個元素進行操作,得到的結果再與第三個資料用 function 函式運算,最後得到乙個結果。
from functools import
reduce
sum=
reduce
(lambda x, y: x + y,[1
,2,3
,4,5
,6,7
,8])
print
(sum
)
終於看完第二篇了,呼 Python 入個門(二)
python程式設計 從資料分析到資料科學 摘抄及拓展 5.3強型別語言 print 2 3 這種寫法是錯誤的,python不支援資料型別的自動轉化 print 3 true 45.8python中的關鍵字 使用模組keyword中的屬性kwlist檢視,這裡返回的是乙個列表。import keyw...
樹刨入個門?
重兒子 重兒子是每個節點的兒子節點中子樹節點數最大的那乙個。樹鏈刨分,把乙個樹砍成好多份變成乙個陣列p,p陣列裡存的是點的訪問到的順序,但是點的順序是根據什麼來的?先訪問重兒子,因為這樣可以盡可能多的一下找好長的鏈。經典問題 1.給樹上兩個節點之間的最短邊上加上val 2.查詢兩點的最短距離 用到好...
Python驗證三門問題
問題名字來自該節目的主持人蒙提 霍爾 monty hall 參賽者會看見三扇關閉了的門,其中一扇的後面有一輛汽車,選中後面有車的那扇門可贏得該汽車,另外兩扇門後面則各藏有乙隻山羊。當參賽者選定了一扇門,但未去開啟它的時候,節目主持人開啟剩下兩扇門的其中一扇,露出其中乙隻山羊。主持人其後會問參賽者要不...