python列表元組的操作

lm_y發表於2017-08-23

Python風格程式設計規範部分筆記:http://paste.ubuntu.com/16293710/

各種型別轉換:http://www.cnblogs.com/linjiqin/p/3674356.html

  1. #coding=utf-8  
  2.   
  3. #列表  
  4. string  = 'list'  
  5. #字串->列表  
  6. list1 = list(string) # ['l', 'i', 's', 't']  
  7. #列表->字串  
  8. string1 = ''.join(list1) #list  
  9.   
  10. #列表的增刪改查  
  11. list1 = list('this is a list')  
  12. #增加  
  13. list1.append('!'#末尾增加元素  
  14. list1.insert(2,'this is index 3'#指定index增加一個元素  
  15.   
  16. #刪除  
  17. list1.pop(-1)  #刪除指定index的元素 預設是-1 return被刪除元素的值  
  18. del list1[-1]  
  19. if '!' in list1:  #刪除第一個匹配的元素,如果不存在會報錯,沒有返回值  
  20.     list1.remove('!')  
  21. #修改  
  22. list1[0] = '0'  #元素賦值  
  23. list1[0:2] = list('05')  #分片賦值  
  24. list1[1:1] = list('1234'#分片賦值 插入新元素  
  25. list1[1:5] = []  #分片賦值 刪除元素  
  26. #查詢  
  27. if 'a' in list1:  
  28.     index = list1.index('a')  # 查詢元素下標  
  29. #拼接  
  30. list2 = ['new','list']  
  31. list1.extend(list2)  #從列表增加元素  
  32. print list1  
  33. #逆置  
  34. list1.reverse();  
  35. print list1  
  36. #去重  
  37. #1  
  38. l1 = ['b','c','d','c','a','a']  
  39. l2 = list(set(l1))  
  40. #2  
  41. l2.sort(key=l1.index) #保持原來的順序  
  42. #3  
  43. l1 = ['b','c','d','c','a','a']  
  44. l2 = []  
  45. for i in l1:  #[l2.append(i) for i in l1 if not i in l2]  
  46.     if not i in l2:  
  47.         l2.append(i)  
  48. print l2   #保持原來的順序  
  49.   
  50.   
  51.   
  52.   
  53.   
  54.   
  55. #元組 ,操作和列表類似,但是元組不能修改  
  56. #建立  
  57. tuple1 = ()  
  58. tuple1 = 1,  
  59. tuple1 = 1,2,3  
  60. tuple1 = tuple([1,2,3,4]) #序列->元組  
  61. print tuple1  
  62.   
  63.   
  64.   
  65.   
  66.   
  67. #字典  
  68. #建立  
  69. dict1 = {  
  70.     'key':'value',  
  71.     'key1':'value1'  
  72. }  
  73. a = [('key1','value1'),('key2','value2')]  
  74. dict1 = dict(a)  
  75. dict1 = {}.fromkeys(['key1','key2'],'default_value'#從鍵值建立dict  
  76. dict1 = dict(key1='value1',key2='value2')  
  77.   
  78. #增加  
  79. dict1['key3']='value3' #字典可以自動新增  
  80. dict1.setdefault('key5','N/A'#如果不存在,就設定預設值  
  81.   
  82. #刪除  
  83. del dict1['key3']  
  84. print dict1.pop('key2')  #popitem隨機刪除 和列表的pop一樣  
  85. #dict1.clear()  #深刪除,即使有拷貝 也會被刪除  
  86.   
  87. #修改  
  88. if 'key1' in dict1:  
  89.     dict1['key1']='new_value_1'  
  90. #查詢  
  91. if 'key1' in dict1:  
  92.     print dict1['key1']  
  93. if dict1.has_key('key1'):  
  94.     print dict1['key1']  
  95. print dict1.get('key3','not exists'#寬鬆訪問  
  96. print dict1.keys(),dict1.values()  
  97.   
  98. #拼接  
  99. dict2 = dict(key4 = 'value4'#從字典更新另一個字典  
  100. dict1.update(dict2) 

相關文章