列表 和 元組

python
1 字符串:
1.1 三個單引號:'''一串長的字符串(可直接換行)'''
1.2 反斜槓  \:可換行。
   如:      字符串1\
                 字符串2
          表示:字符串1字符串2


   數和表達式
   求結果: 1 / 2=0.5  
   求整數部分:1 // 2 = 0   5.0 // 2.4 =2.0 
   求餘數: 10 % 3 = 1
   求平方:2**3=8    pow(2,3)=8
   求絕對值:abs(-10)=10
   圓整,相等取偶數:  round(2/3)=1.0
   求下限:math.floor(32.9)=32
   求上限:math.ceil(32.9)=33
   平方根:sqrt(9)=3


   條件語句
   if 'w' in 'wwz' : print('好的')

 

2 列表(集合)
 2.1 可用"[index]"來獲取單個元素
 2.2 獲取一段元素:arr[startIndex,endIndex]。
可總結爲:從arr[startIndex]開始,截取長度爲(endIndex-startIndex)的序列段。
 注意:(1)如結束於序列末尾,可簡寫:[-3:](最後三個)([-3:0]的結果不是想要的)
          (2)如開始於序列開頭,可簡寫:[:3](前三個)
            (3) 獲取所有:可簡寫:[:]
          (4)[4,-4]表示從索引爲4開始,結束於從末尾開始索引爲4,但不含末尾索引爲4的元素。www.baidu.com[4:-4]=[baidu]
  2.3步長 
    2.3.1 默認爲1,爲1時,可省略。不可爲0,可爲正數,可爲負數 
    2.3.2 格式:arr[startIndex,endIndex:length]
 2.4 序列相加
   [1,2,3]+[4,5,6]=[1,2,3,4,5,6]
   [1,2,3]+'123'=報錯
   '111'+'222'='111222'
 2.5序列乘法
  'a'*2='aa'
  [1]*2=[1,1]
  2.6 in 包含,返回布爾值
     'w' in 'wwz'
     'wwz' in ['wwz','wwx']
      [1,3] in [[1,2],[2,3],[4,5]]
 2.7 長度 最小值 最大值
     len(seq) 
     max(seq)
     min(seq)

 2.8 列表 list
 x=[1,2,3]
 2.8.1 修改、賦值:x[0]=99 得 x=[99,2,3]
 2.8.2 刪除:del x[1]  得 x=[1,3]
 2.8.3 給切片賦值
   2.8.3.1 修改一個片斷:x[0:2]=[4,5] 的 x=[4,5,3]
   2.8.3.2  插入一個片斷:x[1:4]=[7,8,9] 得 x=[1,7,8,9]
                                     x[1:1]=[7,8,9] 得 x=[1,7.8.9.2,3]
   2.8.3.3 刪除一個片斷(即替換爲空):x[1:3]=[] 得 x=[1]
 2.8.4 方法

   x=[1]
  2.8.4.1  x.append(2)   =>  x=[1,2]
              x.clear()
              x.count(1) 即"1"在列表中出現幾回
              x.index(1) 指定值第一次在列表中出現的索引
              x.insert(index,value) 插入元素
              x.pop(可選參數) 刪除最後一個元素,並返回該元素;可選參數(index)有指時,操做指定索引的元素
   2.8.4.2  (1)y=x  y[0]=99  得 x=[99] y=[99] 即淺複製
               (2)y=x.copy() y[0]=100 得 x=[1] y=[100] 即深複製
   2.8.4.3  (1)x=[1,2,3]  y=[4,5,6]
              x.extend(y)  得 x=[1,2,3,4,5,6] y=[4,5,6]
              extend會修改被擴展的列表x,,可是y列表不會變
             (2) x=[1,2,3]  y=[4,5,6]
                   x+y 得 x=[1,2,3]  y=[4,5,6]
                x+y會返回新的列表,執行操做得列表不會發生改變。
            若是爲了獲得相同得列表即 a=a+b 和 a.extend(b) 即a最終結果都同樣,extend的效率要高。
   2.8.4.4   x=[1, 2, 3, 2]
                x.remove(2)  得x=[1,3,2] 刪除指爲2得第一個元素,參數不是索引
                x.reverse()  得x=[2,3,2,1]
                x,sort() 得x=[1,2,2,3]

>>> x=[1,3,2,4] #sorted返回新的列表,參數不會發生改變
>>> y=sorted(x)
>>> x
[1, 3, 2, 4]
>>> y
[1, 2, 3, 4]


>>> x=1, 111, 22, 2, 33, 44444, 5]#sort高級應用
>>> x.sort(reverse=True)#數字
>>> x
[44444, 111, 33, 22, 5, 2, 1]
>>> x.reverse()
>>> x
[1, 2, 5, 22, 33, 111, 44444]
>>> x=['111','1','22']
>>> x.sort(key=len)#文字
>>> x
['1', '22', '111']


3 元組
 3.1 建立
>>> 1,2,3#建立1
(1, 2, 3)
>>> (1,2,3)#建立2
(1, 2, 3)
>>> ()#空元組
()
>>> 1,#只有1個元素的元組建立時比較特殊,後面必須加逗號
(1,)
>>> 3*(11+2) #注意區別單個元素元組
39
>>> 3*(11+2,)#注意逗號
(13, 13, 13)
>>> x=tuple([1,2,3])#tuple函數建立元組,參數爲列表
>>> x
(1, 2, 3)
>>> x=tuple(1,2,3)#tuple函數參數最多爲1個
Traceback (most recent call last):
  File "<pyshell#108>", line 1, in <module>
    x=tuple(1,2,3)
TypeError: tuple expected at most 1 arguments, got 3
x
>>> x=tuple((1,2,3))#tuple函數建立元組,參數爲元組
>>> x
(1, 2, 3)
相關文章
相關標籤/搜索