這幾天都沒有更新,不表明我沒有學習吖!
這兩天都在忙着半夜,終於有了本身的小窩,一直住家裏,忽然搬出來心情還滿奇特的。
雖然還在一個城市裏,可是感受有了更多的本身的時間。
好比如今是晚上十點,在家的話可能還有不少吵吵嚷嚷的聲音(家裏人口比較多),如今就本身安靜的敲敲字學習什麼的。
恩,仍是要好好學習,記念下搬出來後的第一次學習!平安夜快樂!
app
先好好整理下這幾天學習的成果,這幾天在手機上持續看的教程,其實看的也很少啦,那就當溫故而知新啦~
上一回合看完了函數,這幾天認真看了下Python的高級特性函數
取list或者tuple裏面的部分值是很常見的操做。
可是有土辦法也有聰明的辦法。
土辦法就是我挨個去寫index的值唄。學習
print(list[0],list[1],list[2])
聰明一點,讓咱們來用循環。測試
r = [] n = 3 for i in range(n): r.append(L[i])
循環其實也很麻煩,因此Python提供了Slice切片操做符。spa
L[0:3] #這樣就完成了前三項的選取
index
索引有不少優秀的用法3d
0
的時候,就能夠簡略不寫L[:3]
L[-2:]
L[:]
若是給定一個list或tuple,咱們能夠經過for循環來遍歷這個list或tuple,這種遍歷咱們稱爲迭代(Iteration)。
其實剛開始寫Python的時候很是不習慣,由於以前經常使用的C++,PHP,JS都是用下標來表示數據的位置,而後完成迭代。
因此更高級的抽象化是須要逐步適應的。code
只要是可迭代對象,不管有無下標,均可以迭代,好比dict就能夠迭代。
>>> d = {'a': 1, 'b': 2, 'c': 3} >>> for key in d: ... print(key) ... a c b
只要是可迭代的朋友,for就能生效,emmm,可是首先,咱們要確認這個朋友,它真的能夠迭代嗎?對象
>>> from collections import Iterable >>> isinstance('abc', Iterable) # str是否可迭代 True >>> isinstance([1,2,3], Iterable) # list是否可迭代 True >>> isinstance(123, Iterable) # 整數是否可迭代,這個朋友沒法迭代 False
而後對於下標循環,也是有一套解決方案的。blog
Python內置的enumerate函數能夠把一個list變成索引-元素對,這樣就能夠在for循環中同時迭代索引和元素自己。
>>> for i, value in enumerate(['A', 'B', 'C']): ... print(i, value) ... 0 A 1 B 2 C
for
循環裏,同時引用兩個變量,在Python裏是很常見的教程
>>> for x, y in [(1, 1), (2, 4), (3, 9)]: ... print(x, y) ... 1 1 2 4 3 9
最後,作個做業
困到真的要起飛啦,明天再繼續咯~
恩,Python真有意思~
但願2019年能夠順利過上寫Python爲主的生活。
PS:最近已經開始刷leetcode啦,受小夥伴感染,後續也會開始寫習題本啦~