【每日一記3.16】python學習記錄3----字典,列表,元組

6.Python的列表

   Python列表是python內置的數據對象之一

   列表用【】包含,內有數據對象,每個數據對象以分隔,每個數據對象稱爲元素

   python是一個有序的序列,支持嵌套

   【】空列表,同時用list(‘strings’)函數也可以生成列表

       列表方法:

           - append(object):將新的元素追加到列表後面,只能追加一個

           In [52]: l=list('TCQ')

           In [53]: l

           Out[53]: ['T', 'C', 'Q']

           In [54]: l.append('ws')

           In [55]: l

           Out[55]: ['T', 'C', 'Q', 'ws']

       - count(value):統計每個對象在列表中出現的次數,返回值爲number

           In [56]: l=list('1223334445555')

           In [56]: l.count('4')

           Out[56]: 3

           In [57]: type(l.count('4'))

           Out[57]: int

       - extend(iterable)將可迭代的對象拆分,追加到列表後面

           In [58]: l=list('TCQ')

           In [59]: l.extend('ws')

           In [60]: l

           Out[60]: ['T', 'C', 'Q', 'w', 's']

       - index(value[,start[,stop]])

       根據列表內的元素查找對應的索引,返回值爲number

           In [61]: l.index('T',0,len(l)-1)

           Out[61]: 0

       - insert(index,object)

       在指定索引位插入對象,相當於list[n]=object

           In [62]: l.insert(3,'D')

           In [63]: l

           Out[63]: ['T', 'C', 'Q', 'D', 'w', 's']

       - pop(index)

       彈出指定索引對應的元素

           In [64]: l.pop(3)

           Out[64]: 'D'

           In [65]: l

           Out[65]: ['T', 'C', 'Q', 'w', 's']

       - remove(value)

       刪除指定的元素,若不存在返回ValuerError

           In [66]: l.remove('w')

           In [67]: l

           Out[67]: ['T', 'C', 'Q', 's']

           In [68]: type(l.remove('T'))

           Out[68]: NoneType

       - reverse()

       將列表內的元素順序前後對掉,不是反排序

           In [69]: l.reverse()

           In [70]: l

           Out[70]: ['s', 'w', 'Q', 'C', 'T']

       - sort()

       將列表內的元素進行排序,順序爲0-9A-Za-z

       reverse=True反排序

           In [71]: l

           Out[71]: ['a', 'A', '1', 'B', '2', 'b', '3', 'C', 'c']

           In [72]: l.sort()

           In [73]: l

           Out[73]: ['1', '2', '3', 'A', 'B', 'C', 'a', 'b', 'c']

           In [74]: l.sort(reverse=True)

           In [75]: l

           Out[75]: ['c', 'b', 'a', 'C', 'B', 'A', '3', '2', '1']

       - list[index]=value

       根據索引查元素

           In [87]: l[2]

           Out[87]: 'Q'

       - del list[index]

       刪除索引對應的值

           In [88]: del l[2]

           In [89]: l

           Out[89]: ['T', 'C', 'w', 's']

7.Python字典

       用{}包裹,每個鍵值對由:分隔,鍵與值用冒號相連

       字典是無序的,鍵必須唯一

       字典是python中的映射數據類型

       {'name':'tcq','age':24,'address':'Beijing'}

           In [90]: {}.fromkeys(['key1','key2','key3'])

           Out[90]: {'key1': None, 'key2': None, 'key3': None}

       使用字典函數創建字典:

           In [91]: dict((['x',1],['y',2]))

           Out[91]: {'x': 1, 'y': 2}

       訪問字典:

           In [92]:d={'name':'tcq','age':24,'address':'Beijing'}

           In [93]: d['name']

           Out[93]: 'tcq'

       字典更新:鍵值有則更新,無則添加

           In [94]: d['new_key']='new_key'

           In [95]: d

           Out[95]: {'address': 'Beijing', 'age': 24, 'name': 'tcq', 'new_key': 'new_key'}

       字典刪除:

           In [96]: del d['new_key']

       字典方法:

       - values()獲取鍵對應的值

       In [97]: d.values()

           Out[97]: [24, 'tcq', 'Beijing']

       - keys()獲取鍵

           In [98]: d.keys()

           Out[98]: ['age', 'name', 'address']

       - pop(k,[d])彈出指定鍵對應的值,如果沒找到返回d

           In [99]: d.pop('name')

           Out[99]: 'tcq'

           In [100]: d.pop('name','no')

           Out[100]: 'no'

       - update()更新字典內鍵與值,鍵名即使是字符串也不加引號

           In [1]: d.update(name='tcqws')

           In [2]: d

           Out[2]: {'address': 'Beijing', 'age': 24, 'name': 'tcqws'}

       - get()獲取字典中鍵對應的值,與dict['keyname']相同

           In [3]: d.get('name')

           Out[3]: 'tcqws'

       - items()將字典的每一個鍵和值放在一個元組中,多個元組存放在列表中

           In [4]: d.items()

           Out[4]: [('age', 24), ('name', 'tcqws'), ('address', 'Beijing')]

           In [5]: type(d.items())

           Out[5]: list

       - popitem()隨機刪除字典中的一個鍵值對,並以元組方式返回

           In [6]: d.popitem()

           Out[6]: ('age', 24)

       - viewitems()返回字典元素視圖

       - keyitems()返回字典鍵視圖

       - valueitems()返回字典值視圖

       - iteritems()返回字典dict的迭代對象

       - iterkeys()返回字典dict的鍵的迭代對象

       - itervalues()返回字典dict的值的迭代對象

       - setfault(k,[d])如果鍵在字典中,則返回鍵對應的值,如果不在,則創建該鍵,值爲默認的None或者是d

           In [7]: d.setdefault('name')

           Out[7]: 'tcqws'

           In [8]: d.setdefault('name1')

           In [9]: d

           Out[9]: {'address': 'Beijing', 'age': 24, 'name': 'tcqws', 'name1': None}

       - copy()產生字典副本

           In [10]: d1=d.copy()

           In [11]: id(d)

           Out[11]: 27333328

           In [12]: id(d1)

           Out[12]: 27661392

           In [13]: d is d1

           Out[13]: False

       - clear()清除字典內的所有鍵和值

           In [14]: d1.clear()

           In [15]: d1

           Out[15]: {}

       - has_key()判斷字典中是否由指定的鍵

           In [16]: d.has_key('name')

           Out[16]: True

       Python 中被in替代

       字典視圖:

       在2.7版本以後,Python引入了字典視圖。字典視圖是字典的動態視圖:會與字典保持同步,實時反映出字典的變化。

       迭代對象:

       就是一個迭代器,會返回當前的數據,然後自動的調用內置的next()方法來讀取,自動的移動到下一個元素,準備下次的讀取,直到對象末尾

8.Python元組

       元組多數情況下,用於系統的輸入或者系統的返回,元組的特性是不可修改,但支持迭代

       元組只有countindex兩種方法

       元組以()來定義,以分隔,源所可以是任何數據對象

           In [17]: t=('name','age','name','address')

           In [18]: t.count('name')

           Out[18]: 2

           In [19]: t.index('name')

           Out[19]: 0


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章