Python 從入門到放棄(一)

2021-08-11 02:06:17 字數 2276 閱讀 5156

列表 (list) 和元組 (tuple)

python中有6中內建序列(sequence):list,tuple,字串,unicode字串,buffer,xrange。

序列對映是兩種主要的容器(container)。

序列包括 list 和 tuple , 對映包括 dict

set 即不是序列又不是對映

序列操作:indexing,slicing,adding,multiplying

slicing:第乙個引數包含,第二個不包含,可以用第三個引數指定步長,步長可以是負數。

in [4]: a

out[4]: [0, 1, 2, 3, 4, 5, 6, 7, 8]

in [5]: a[8:3:-2]

out[5]: [8, 6, 4]

adding:同類序列可以相加,進行連線

multiplying:新的序列重複原有序列,乘數為重複次數

in [6]: a = [1,2] * 8

aout[7]: [1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2, 1, 2]

none 用來代表空值,類似matlab的nan,如需要無值的初始化,可以:

a = [none] * 6

aout[9]: [none, none, none, none, none, none]

成員資格:in 來檢查是否是成員,對於字串可以如下:(python2.3起)

in [10]: sub = 'too young too ******'

in [11]: 'you' in sub

out[11]: true

in [12]: '*****' in sub

out[12]: false

分片賦值:可以替換成與原序列不等長的內容:

name = list('pear')

name

out[26]: ['p', 'e', 'a', 'r']

name[1:] = list('ahahaha')

name

out[28]: ['p', 'a', 'h', 'a', 'h', 'a', 'h', 'a']

同時分片賦值還能實現 insert 的 method 功能,非常高階666:

numbers = range(5)

numbers

out[14]: [0, 1, 2, 3, 4]

numbers[1:1]

out[15]:

numbers[1:1] = [666,666]

numbers

out[17]: [0, 666, 666, 1, 2, 3, 4]

a

out[30]: [3, 5, 1, 8, 6, 9]

sorted(a)

out[31]: [1, 3, 5, 6, 8, 9]

aout[32]: [3, 5, 1, 8, 6, 9]

a.sort()

aout[34]: [1, 3, 5, 6, 8, 9]

sort 排序可以傳引數,key可以傳len,表示按照長度排序。反向排序reverse=true:

a.sort(reverse=true)

aout[40]: [9, 8, 6, 5, 3, 1]

tuple 是不可變的 sequence,不能修改。用逗號分割一些值實際上就是創造了tuple,而單個值加逗號也可以建立tuple:

1,

out[41]: (1,)

1,2,3

out[42]: (1, 2, 3)

tuple 能在對映(dict)和集合的成員中作 key ,而 list 不行。

tuple 作為很多內建函式的返回值。

the end

python 從入門到放棄

本人所有關於python的內容均為學習期間的整理的筆記,希望可以給學習者帶來些許幫助!不過一入it深似海!準備入行者請做好充分的心理準備!計算機的知識跟新迭代速度很快,不學習就會被淘汰!如果你打算入行然後找乙份安穩的工作安度餘生,那麼我還是建議去考公務員吧!這個行業可能並不適合你!有不少的人可能都覺...

Python 從入門到放棄(三)

2011 12 11 mon 13 58 直接建立 phonebook phonebook out 224 phonebook dict alice 1234 bob 2345 注意關鍵字不能是expression,不是 alice 而是alice phonebook out 228 或者通過鍵值對...

Python從入門到放棄 一 概論

1.軟體質量 1.python程式有很好的可讀性,一致性和軟體質量。2.python支援軟體開發的高階重用機制,例如物件導向等 2.提高開發者效率 1.python作為開發工具均以付出更少的精力完成更多的任務而脫穎而出。3.可以定義為物件導向的指令碼語言。4.有缺點,是不夠快 純python 的執行...