Python數(shù)據(jù)結構常用方法

  1. Integer類型
1. a + b
2. a - b
3. a * b
4. a ** b  
    a的b次方蜡吧,同pow(a, b)
5. a / b
    a除以b滤奈,5 / 2 = 2.5
6. a // b
    a除以b捆姜,去掉余數(shù)我磁, 5 // 2 = 2, 5.1 // 2 == 2.0
7. abs(a)
    取絕對值
8. divmod(a, b)
    以二元組形式返回商和a對b的取余數(shù)(a%b)
    divmod(5, 2) = (2, 5)
9. pow(a, b)
    a的b次方
10. pow(a, b, c)
    a的b次方视卢,然后對c取余 (a ** b) % c
11. round(a, b)
    對a進行四舍五入纠炮,保留b位小數(shù)點
12. bin(a)
      返回a的二進制表示 bin(255) = "0b11111111"
13. hex(a)
      返回a的十六進制表示 hex(255) = "0xff"
14. int(a)
      可以把str, float, 八進制今豆,十六進制,二進制轉化為10進制整數(shù)
      int(0x1111) = 15
      int(10.999) = 10
      int("10") = 10
15. oct(a)
    返回a的八進制表示 oct(10) = 0o12
16. sys.float_info.epsilon
      機器可區(qū)分的浮點數(shù)的最小區(qū)別
  1. str字符串
str = "hello world"  
1. for c in str:
    iterable
2. str[0:2] = "he"
    str[0:4:2] = "hl"
    str[2:] = "llo world"
    str[:2] = "he"
    str[::2] = "hlowrd"
    str[-2] = "l"
3. str.capitalize()
    首字母大寫颜骤,其他字母小寫 "hELLo".capitalize() = "Hello"
4. str.count(c, start, end)
    str中唧喉,子字符串c出現(xiàn)的次數(shù)
5. str.endswith(c, start, end)
    str或者str的分片是否以c結尾
6. str.startswith(c, start, end)
    str或者str的分片是否以c開始
7. str.expandtabs(size)
    str中的制表符使用8個或者size個空格替換,"\ta".expandtabs(10)
8. str.find(c, start, end)
    返回c第一次在str中出現(xiàn)的位置忍抽,沒有找到返回-1
9. str.format()
    格式化
    "{0} is a {1}".format("she", "girl")
    "{0[0]} is a {0[1]}".format(("She", "girl"))
    "{who} is a {what}".format(who="She", what="girl")
    格式化的時候八孝,!s對應__str__, !a對應__ascii__, !r對應__repr__
10. str.index(c, start, end)
    同str.find(),但是找不到會拋出ValueError
11. str.isalnum()
    str非空鸠项,且每個字符都為字母數(shù)字
12. str.isalpha()
    str非空干跛,且每個字符都為字母
13. str.isnumeric()
          True: Unicode數(shù)字,全角數(shù)字(雙字節(jié))祟绊,羅馬數(shù)字驯鳖,漢字數(shù)字
          False: 無
          Error: byte數(shù)字(單字節(jié))
      str.isdecimal()
          True: Unicode數(shù)字,久免,全角數(shù)字(雙字節(jié))
          False: 羅馬數(shù)字浅辙,漢字數(shù)字
          Error: byte數(shù)字(單字節(jié))
      str.isdigit()
          True: Unicode數(shù)字,byte數(shù)字(單字節(jié))阎姥,全角數(shù)字(雙字節(jié))记舆,羅馬數(shù)字
          False: 漢字數(shù)字
          Error: 無
14. str.islower()
      str非空,且都是小寫
      str.isupper()
      str非空呼巴,且都是大寫
      str.istitle()
      str非空泽腮,且首字母大寫,其他小寫
15. str.join(seq)
      "-".join(("1991", "8", "6")) = 1991-8-6
16. str.ljust(width, c)      左對齊衣赶,用c填充
      str.rjust(width, c)      右對齊诊赊,用c填充
      str.center(width, c)    中間對齊,用c填充
17. str.replace(t, u, n)
      將字符串中的t換成u府瞄,最多替換n次
18. str.split(c, n)
      將字符串以c分割碧磅,最多分割n次
19. str.strip(chars)
      去除str前后的空白字符(或者chars中的字符)
20. str.swapcase()
      交換字符串的大小寫
21. str.title()
      str首字母大寫,其他字母小寫
22. str.lower()    小寫
      str.upper()    大寫
23. str.zfill(w)  
      用0填充str到長度w
24. ord(c)
      返回字符c的ASCII碼
25. chr(ascii)
      返回ascii對應的字符
  1. list列表
lst = list()
1. lst.append(x)
2. lst.count(x)
3. lst.extend(lst2)
    相當于 lst += lst2
4. lst.index(x, start, end)
    x首次出現(xiàn)的位置, 不存在拋出ValueError
5. lst.insert(index, x)
    在index處插入x鲸郊,如果index > len(lst)丰榴,則在末尾插入
6. lst.remove(x)
    刪除首次出現(xiàn)的x,如果不存在拋出ValueError
7. lst.pop(i)
    刪除i處的數(shù)據(jù)秆撮,如果i >= len(lst)四濒, 拋出IndexError
8. lst.pop()
    刪除最后一個
9. lst.sort(reverse=True, key=lambda x: x%3)
10. 列表內涵
      lst = [x for x in range(1900, 2017) if (x % 4 ==0 and x % 100 != 0) or (x % 400 == 0)]
  1. set集合類型
s = set()
1. s.add(x)
2. s.clear()
3. s.copy()
    淺拷貝
4. s.difference(t)  s-t,在s中职辨,但不在t中的
5. s.difference_update(t)
    移除s中的既在t中盗蟆,也在s中的 {1,2}.difference_update({1, 5}) = {2}
6. s.intersection(t) s&t,在s中舒裤,也在t中
    s.intersection_update(t) 使得s中喳资,只包含s與t的交集 {1,2}.intersetion_update({1,5}) = {1}
7. s.union(t) s | t, 并集惭每,s與t的并集
8. s.update(t) 
    使得s包含s與t的并集
9. s.symmetric_difference(t)
    返回不同時在s和t中的集合 {1, 2, 3}.symmetric_difference({1, 4, 5})  = {2, 3, 4, 5}
10. s.symmetric_difference_update(t)
    使得s等于不同時在s和t中的所有項的集合
11. s.isdisjoint(t)
    如果s和t沒有相同的項骨饿,返回True
12. s.issuperset(t) s是否是t的超集
13. s.issubset(t)  s是否是t的子集
14. s.pop()
      移除s的一個隨機項,(第一項)
15. s.remove(x)
      移除x
  1. 字典dict
d = dict() || d = {}
1. d.clear()
2. d.copy()
    淺拷貝
3. d.fromkeys(list, value)
    添加list數(shù)據(jù)作為key台腥,值為value || None
4. d.get(k)
    如果不存在k宏赘,返回None
5. d.get(k, v)
    如果不存在k,返回v
6. d.items()
    返回(key, value)值對
    for key, value in d.items():
      print(key, value)
7. d.keys()
    返回所有的鍵
8. d.pop(k)
    如果k在d中黎侈,返回并移除察署,如果不存在,拋出KeyError
9. d.pop(k, v)
    如果k在d中峻汉,返回并移除贴汪,不存在,返回v
10. d.popitem()
    隨機移除并返回一個鍵值對休吠,如果為空扳埂,拋出KeyError
11. d.setdefaut(k, v)
    如果存在,返回d[k]瘤礁, 如果不存在阳懂,設定d[k] = v
12. d.update(a)
    更新字典,a可以是字典柜思,元祖對岩调,或者key=value
13. d.values(a)
    獲取字典所有的值
14. 字典內涵:
      ``` 
      def  asc(start, end):
          while(ord(start) <= ord(end)):
              yield start
              start = chr(ord(start) + 1)    
      d = {k: "we are default" in asc('a', 'c')}
      ```
      ```
      m = lambda x: [v for v in asc(x, "z")]
      d = {k: m(k) for k in asc("a", "c")}
      ```
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市赡盘,隨后出現(xiàn)的幾起案子号枕,更是在濱河造成了極大的恐慌,老刑警劉巖陨享,帶你破解...
    沈念sama閱讀 206,723評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件葱淳,死亡現(xiàn)場離奇詭異钝腺,居然都是意外死亡,警方通過查閱死者的電腦和手機蛙紫,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,485評論 2 382
  • 文/潘曉璐 我一進店門拍屑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來途戒,“玉大人坑傅,你說我怎么就攤上這事∨缯” “怎么了唁毒?”我有些...
    開封第一講書人閱讀 152,998評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長星爪。 經(jīng)常有香客問我浆西,道長,這世上最難降的妖魔是什么顽腾? 我笑而不...
    開封第一講書人閱讀 55,323評論 1 279
  • 正文 為了忘掉前任近零,我火速辦了婚禮,結果婚禮上抄肖,老公的妹妹穿的比我還像新娘久信。我一直安慰自己,他們只是感情好漓摩,可當我...
    茶點故事閱讀 64,355評論 5 374
  • 文/花漫 我一把揭開白布裙士。 她就那樣靜靜地躺著,像睡著了一般管毙。 火紅的嫁衣襯著肌膚如雪腿椎。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,079評論 1 285
  • 那天夭咬,我揣著相機與錄音啃炸,去河邊找鬼。 笑死卓舵,一個胖子當著我的面吹牛南用,可吹牛的內容都是我干的。 我是一名探鬼主播边器,決...
    沈念sama閱讀 38,389評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼训枢,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了忘巧?” 一聲冷哼從身側響起恒界,我...
    開封第一講書人閱讀 37,019評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎砚嘴,沒想到半個月后十酣,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體涩拙,經(jīng)...
    沈念sama閱讀 43,519評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,971評論 2 325
  • 正文 我和宋清朗相戀三年耸采,在試婚紗的時候發(fā)現(xiàn)自己被綠了兴泥。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,100評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡虾宇,死狀恐怖搓彻,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情嘱朽,我是刑警寧澤旭贬,帶...
    沈念sama閱讀 33,738評論 4 324
  • 正文 年R本政府宣布,位于F島的核電站搪泳,受9級特大地震影響稀轨,放射性物質發(fā)生泄漏。R本人自食惡果不足惜岸军,卻給世界環(huán)境...
    茶點故事閱讀 39,293評論 3 307
  • 文/蒙蒙 一奋刽、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧艰赞,春花似錦佣谐、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,289評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至吁断,卻和暖如春趁蕊,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背仔役。 一陣腳步聲響...
    開封第一講書人閱讀 31,517評論 1 262
  • 我被黑心中介騙來泰國打工掷伙, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人又兵。 一個月前我還...
    沈念sama閱讀 45,547評論 2 354
  • 正文 我出身青樓任柜,卻偏偏與公主長得像,于是被迫代替她去往敵國和親沛厨。 傳聞我的和親對象是個殘疾皇子宙地,可洞房花燭夜當晚...
    茶點故事閱讀 42,834評論 2 345

推薦閱讀更多精彩內容