python序列構成的陣列
阿新 • • 發佈:2018-12-12
# 容器序列 # list,tuple,collection.deque # 存放的是他們所包含的任意物件的引用 # 扁平序列 # str,bytes,bytearray,memoryview和array.array # 存放的是值,扁平序列其實是一段連續的記憶體空間 # 可變序列 # list, # 不可變序列 # tuple,str和bytes text = [i for i in range(10)] # 列表推導式,如果超過二行,考慮for迴圈 print(text) # 列表推導的作用只用一個:生成列表 text = (i for i in range(10)) # 生成表示式,只不過把方括號換成圓括號而已 print(text) text = tuple(i for i in range(10)) # 生成表示式是一個函式呼叫過程中的唯一引數時,那麼不需要 print(text) # 用額外的括號把它圍起來 # 用*處理剩下的元素 在平行賦值中,*字首只能出現在一個變數前面 # 1 函式 # def main(*args, **kwargs): # 在python中,函式用*args來獲取不確定數量的位置引數,**kwargs獲取不確定數量的關鍵字傳參 # 2 元組 a, b , *rest = range(5) print(a, b, rest) # 列表或元祖的方法和屬性 # 列表 元組 # s.__add__(s2) * * s+s2 拼接 ————建立一個新物件 # s.__iadd__(s2) * s += s2,就地拼接————元祖不可變 # s.append(e) * # s.clear() * 刪除所有元素 # s.__contain(e) * * s是否包含e————一般使用in # s.count(e) * * e在s中出現的次數 # s.extend(it) * 把可迭代物件it追加給s # s.index(e) * * 在s中找到元素e第一次出現的位置 # s.insert(p, e) * 在位置p之前插入元素e # s.pop([p]) * 刪除最後或位於p位置的元素,並返回他的值 # s.remove(e) * 刪除s中第一次出現的e # s.reverse() * 就地把s的元素倒序排列 # s.sort([key], [reverse]) * 就地對s的元素進行排序 # sorted內建函式,可接受任何可迭代物件,最後返回一個列表。 # 當陣列不是首選時 # 存放大量float,陣列array效率更高 # 頻繁的對序列做先進先出的操作,deque(雙端佇列)的速度會更快 # 如果查詢操作很頻繁,用set會更合適