精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

這18 個 Python 高效編程小技巧,真香!

開發 后端
初識Python語言,覺得python滿足了你上學時候對編程語言的所有要求。python語言的高效編程技巧讓那些曾經苦逼學了四年c或者c++的人,興奮的不行不行的,終于解脫了。高級語言,如果做不到這樣,還扯啥高級呢?

 初識Python語言,覺得python滿足了你上學時候對編程語言的所有要求。python語言的高效編程技巧讓那些曾經苦逼學了四年c或者c++的人,興奮的不行不行的,終于解脫了。高級語言,如果做不到這樣,還扯啥高級呢?

[[442357]]

01 交換變量

 

  1. >>>a=3 
  2.  
  3. >>>b=6 

這個情況如果要交換變量在c++中,肯定需要一個空變量。但是python不需要,只需一行,大家看清楚了

 

  1. >>>a,b=b,a 
  2.  
  3. >>>print(a)>>>6 
  4.  
  5. >>>ptint(b)>>>5 

02 字典推導(Dictionary comprehensions)和集合推導(Set comprehensions)

大多數的Python程序員都知道且使用過列表推導(list comprehensions)。如果你對list comprehensions概念不是很熟悉——一個list comprehension就是一個更簡短、簡潔的創建一個list的方法。

 

  1. >>> some_list = [1, 2, 3, 4, 5] 
  2.  
  3. >>> another_list = [ x + 1 for x in some_list ] 
  4.  
  5. >>> another_list 
  6. [2, 3, 4, 5, 6] 

自從python 3.1 起,我們可以用同樣的語法來創建集合和字典表:

 

  1. >>> # Set Comprehensions 
  2. >>> some_list = [1, 2, 3, 4, 5, 2, 5, 1, 4, 8] 
  3.  
  4. >>> even_set = { x for x in some_list if x % 2 == 0 } 
  5.  
  6. >>> even_set 
  7. set([8, 2, 4]) 
  8.  
  9. >>> # Dict Comprehensions 
  10.  
  11. >>> d = { x: x % 2 == 0 for x in range(1, 11) } 
  12.  
  13. >>> d 
  14. {1: False, 2: True, 3: False, 4: True, 5: False, 6: True, 7: False, 8: True, 9: False, 10: True

在第一個例子里,我們以some_list為基礎,創建了一個具有不重復元素的集合,而且集合里只包含偶數。而在字典表的例子里,我們創建了一個key是不重復的1到10之間的整數,value是布爾型,用來指示key是否是偶數。這里另外一個值得注意的事情是集合的字面量表示法。我們可以簡單的用這種方法創建一個集合:

 

  1. >>> my_set = {1, 2, 1, 2, 3, 4} 
  2.  
  3. >>> my_set 
  4. set([1, 2, 3, 4]) 

而不需要使用內置函數set()。

03 計數時使用Counter計數對象

這聽起來顯而易見,但經常被人忘記。對于大多數程序員來說,數一個東西是一項很常見的任務,而且在大多數情況下并不是很有挑戰性的事情——這里有幾種方法能更簡單的完成這種任務。Python的collections類庫里有個內置的dict類的子類,是專門來干這種事情的:

 

  1. >>> from collections import Counter 
  2. >>> c = Counter( hello world ) 
  3.  
  4. >>> c 
  5. Counter({ l : 3,  o : 2,    : 1,  e : 1,  d : 1,  h : 1,  r : 1,  w : 1}) 
  6.  
  7. >>> c.most_common(2) 
  8. [( l , 3), ( o , 2)] 

04 漂亮的打印出JSON

JSON是一種非常好的數據序列化的形式,被如今的各種API和web service大量的使用。使用python內置的json處理,可以使JSON串具有一定的可讀性,但當遇到大型數據時,它表現成一個很長的、連續的一行時,人的肉眼就很難觀看了。為了能讓JSON數據表現的更友好,我們可以使用indent參數來輸出漂亮的JSON。當在控制臺交互式編程或做日志時,這尤其有用:

 

  1. >>> import json 
  2.  
  3. >>> print(json.dumps(data))  # No indention 
  4. {"status""OK""count": 2, "results": [{"age": 27, "name""Oz""lactose_intolerant"true}, {"age": 29, "name""Joe""lactose_intolerant"false}]} 
  5.  
  6. >>> print(json.dumps(data, indent=2))  # With indention 
  7.  
  8.   "status""OK"
  9.   "count": 2, 
  10.   "results": [ 
  11.  
  12.     { 
  13.       "age": 27, 
  14.       "name""Oz"
  15.  
  16.       "lactose_intolerant"true 
  17.     }, 
  18.     { 
  19.       "age": 29, 
  20.  
  21.       "name""Joe"
  22.       "lactose_intolerant"false 
  23.     } 
  24.   ] 
  25.  

同樣,使用內置的pprint模塊,也可以讓其它任何東西打印輸出的更漂亮。

05 解決FizzBuzz

前段時間Jeff Atwood 推廣了一個簡單的編程練習叫FizzBuzz,問題引用如下:

寫一個程序,打印數字1到100,3的倍數打印“Fizz”來替換這個數,5的倍數打印“Buzz”,對于既是3的倍數又是5的倍數的數字打印“FizzBuzz”。

這里就是一個簡短的,有意思的方法解決這個問題:

 

  1. for x in range(1,101): 
  2.     print"fizz"[x%3*len( fizz )::]+"buzz"[x%5*len( buzz )::] or x 

06 if 語句在行內

 

  1. print "Hello" if True else "World" 
  2. >>> Hello 

07 連接

下面的最后一種方式在綁定兩個不同類型的對象時顯得很cool。

 

  1. nfc = ["Packers""49ers"
  2. afc = ["Ravens""Patriots"
  3. print nfc + afc 
  4. >>> [ Packers ,  49ers ,  Ravens ,  Patriots ] 
  5.  
  6. print str(1) + " world" 
  7. >>> 1 world 
  8.  
  9. print `1` + " world" 
  10. >>> 1 world 
  11.  
  12. print 1, "world" 
  13. >>> 1 world 
  14. print nfc, 1 
  15. >>> [ Packers ,  49ers ] 1 

08 數值比較

這是我見過諸多語言中很少有的如此棒的簡便法

 

  1. x = 2 
  2. if 3 > x > 1: 
  3.    print x 
  4. >>> 2 
  5. if 1 < x > 0: 
  6.    print x 
  7. >>> 2 

09 同時迭代兩個列表

  1. nfc = ["Packers""49ers"
  2. afc = ["Ravens""Patriots"
  3. for teama, teamb in zip(nfc, afc): 
  4.      print teama + " vs. " + teamb 
  5. >>> Packers vs. Ravens 
  6. >>> 49ers vs. Patriots 

10 帶索引的列表迭代

 

  1. teams = ["Packers""49ers""Ravens""Patriots"
  2. for index, team in enumerate(teams): 
  3.     print index, team 
  4. >>> 0 Packers 
  5. >>> 1 49ers 
  6. >>> 2 Ravens 
  7. >>> 3 Patriots 

11 列表推導式

已知一個列表,我們可以刷選出偶數列表方法:

 

  1. numbers = [1,2,3,4,5,6] 
  2. even = [] 
  3. for number in numbers: 
  4.     if number%2 == 0: 
  5.         even.append(number) 

轉變成如下:搜索公眾號頂級架構師后臺回復“面試”,送你一份驚喜禮包。

 

  1. numbers = [1,2,3,4,5,6] 
  2. even = [number for number in numbers if number%2 == 0] 

12 字典推導

和列表推導類似,字典可以做同樣的工作:

 

  1. teams = ["Packers""49ers""Ravens""Patriots"
  2. print {key: value for value, key in enumerate(teams)} 
  3. >>> { 49ers : 1,  Ravens : 2,  Patriots : 3,  Packers : 0} 

13 初始化列表的值

 

  1. items = [0]*3 
  2. print items 
  3. >>> [0,0,0] 

14 列表轉換為字符串

 

  1. teams = ["Packers""49ers""Ravens""Patriots"
  2. print ", ".join(teams) 
  3. >>>  Packers, 49ers, Ravens, Patriots 

15 從字典中獲取元素

我承認try/except代碼并不雅致,不過這里有一種簡單方法,嘗試在字典中找key,如果沒有找到對應的alue將用第二個參數設為其變量值。

 

  1. data = { user : 1,  name :  Max ,  three : 4} 
  2. try: 
  3.    is_admin = data[ admin ] 
  4. except KeyError: 
  5.    is_admin = False 

替換成這樣

 

  1. data = { user : 1,  name :  Max ,  three : 4} 
  2. is_admin = data.get( admin , False

16 獲取列表的子集

有時,你只需要列表中的部分元素,這里是一些獲取列表子集的方法。

 

  1. x = [1,2,3,4,5,6] 
  2. #前3個 
  3. print x[:3] 
  4. >>> [1,2,3] 
  5. #中間4個 
  6. print x[1:5] 
  7. >>> [2,3,4,5] 
  8. #最后3個 
  9. print x[3:] 
  10. >>> [4,5,6] 
  11. #奇數項 
  12. print x[::2] 
  13. >>> [1,3,5] 
  14. #偶數項 
  15. print x[1::2] 
  16. >>> [2,4,6] 

除了python內置的數據類型外,在collection模塊同樣還包括一些特別的用例,在有些場合Counter非常實用。如果你參加過在這一年的Facebook HackerCup,你甚至也能找到他的實用之處。

 

  1. from collections import Counter 
  2. print Counter("hello"
  3. >>> Counter({ l : 2,  h : 1,  e : 1,  o : 1}) 

17 迭代工具

和collections庫一樣,還有一個庫叫itertools,對某些問題真能高效地解決。其中一個用例是查找所有組合,他能告訴你在一個組中元素的所有不能的組合方式

 

  1. from itertools import combinations 
  2. teams = ["Packers""49ers""Ravens""Patriots"
  3. for game in combinations(teams, 2): 
  4.     print game 
  5. >>> ( Packers ,  49ers ) 
  6. >>> ( Packers ,  Ravens ) 
  7. >>> ( Packers ,  Patriots ) 
  8. >>> ( 49ers ,  Ravens ) 
  9. >>> ( 49ers ,  Patriots ) 
  10. >>> ( Ravens ,  Patriots ) 

18 False == True

比起實用技術來說這是一個很有趣的事,在python中,True和False是全局變量,因此:

 

  1. False = True 
  2. if False
  3.    print "Hello" 
  4. else
  5.    print "World" 
  6. >>> Hello 

 

責任編輯:華軒 來源: Python學習與數據挖掘
相關推薦

2022-02-24 10:05:20

Python編程語言代碼

2019-03-19 13:44:41

Python編程技巧編程語言

2020-12-31 10:33:05

Python開發編程

2020-08-19 09:22:14

Python語言工具

2012-12-25 09:45:08

PythonWeb

2024-01-30 00:40:10

2023-10-26 18:03:14

索引Python技巧

2024-01-30 08:54:05

JavaScript技巧代碼

2024-04-09 14:27:39

2009-10-27 09:09:06

Eclipse技巧

2014-05-16 11:18:14

瀏覽器ChromeFirefox

2020-09-23 09:20:58

代碼Java字符串

2016-08-05 15:33:26

Python編程異常

2015-03-16 16:56:54

開發技巧應用孤島PaaS

2023-07-19 15:16:33

遠程辦公技巧

2019-07-31 10:24:16

JavaScript瀏覽器口袋妖怪

2020-12-07 08:01:59

JavaScript入門技巧

2018-11-28 12:30:58

Python命令行編程語言

2020-03-23 08:36:18

Python編程代碼

2025-04-11 08:00:00

函數式編程Python
點贊
收藏

51CTO技術棧公眾號

中文字幕在线观看91| 日本黄xxxxxxxxx100| 伊人久久久久久久久久久久 | 日韩在线不卡av| 日韩欧美一级| 一道本成人在线| 波多野结衣激情| 少妇高潮一区二区三区99小说 | 亚洲午夜久久久久久久久久久| 韩日午夜在线资源一区二区| 中文字幕观看在线| 黄色欧美日韩| www.亚洲人.com| 亚洲永久无码7777kkk| a一区二区三区亚洲| 欧美午夜xxx| 4444在线观看| av大片在线观看| aa级大片欧美| 97人人模人人爽人人少妇| 无码一区二区三区| 亚洲人体偷拍| 欧美日韩国产成人| 小向美奈子av| 欧美三级三级| 国产视频在线一区二区| 亚洲欧美日韩中文字幕在线观看| 日本精品裸体写真集在线观看| 一区二区欧美国产| 国产高清免费在线| 岛国视频免费在线观看| 波多野洁衣一区| 亚洲综合在线播放| 国产精品久久777777换脸| 蜜桃视频一区| 日本精品免费观看| 国产精品视频久久久久久久| 欧美成人嫩草网站| 中文字幕av一区二区| 深爱五月激情网| 精品精品精品| 亚洲国产成人精品久久| 风韵丰满熟妇啪啪区老熟熟女| 中文字幕日韩亚洲| 欧美裸体bbwbbwbbw| wwww.国产| 99精品国自产在线| 日本高清视频一区二区| 各处沟厕大尺度偷拍女厕嘘嘘| 波多野结衣精品| 亚洲夂夂婷婷色拍ww47| 99er在线视频| av手机免费在线观看| 亚洲综合激情另类小说区| 4444在线观看| h片视频在线观看| 亚洲免费观看在线观看| 艳母动漫在线观看| 五月花成人网| 亚洲sss视频在线视频| 久久久久久久久久久99| 手机在线理论片| 一本到不卡精品视频在线观看| 欧美黄网站在线观看| 日韩伦理三区| 欧美理论电影在线| 九色91porny| 9l亚洲国产成人精品一区二三| 精品久久久三级丝袜| 喷水视频在线观看| 欧美男gay| 精品国产视频在线| 九九视频在线观看| 亚洲三级观看| 国产91在线播放| 亚洲一区精品在线观看| 国产精品中文字幕日韩精品| 国产精品免费区二区三区观看| 天堂av一区二区三区| 久久久国产综合精品女国产盗摄| 亚洲精品乱码久久久久久蜜桃91 | 亚洲视频一区二区免费在线观看| 亚洲一区 在线播放| 国产在线美女| 欧美日韩一级二级三级| 手机看片国产精品| 日韩av不卡一区| 综合激情国产一区| 免费观看一级视频| 奇米888四色在线精品| 97久久天天综合色天天综合色hd | 天天躁日日躁狠狠躁欧美巨大小说| 精品在线欧美视频| 无码人妻精品中文字幕 | 国产精品久久久久三级| 99久久99久久精品| 韩日精品一区二区| 日韩欧美色综合网站| 亚洲永久无码7777kkk| 亚洲女同一区| 日韩美女免费线视频| 国产裸体永久免费无遮挡| 91色综合久久久久婷婷| 色中文字幕在线观看| 中文字幕一区久| 日韩视频免费观看高清完整版| 中文字幕免费看| 欧美日本一区| 国产色视频一区| 日韩一二三四| 一区二区成人在线| 最新中文字幕2018| 午夜精品影视国产一区在线麻豆| 美女av一区二区| 少妇高潮av久久久久久| 国产91丝袜在线18| 一区二区三区欧美成人| 欧美magnet| 欧美精品一区二区三区蜜桃| a一级免费视频| 日韩经典中文字幕一区| 久久66热这里只有精品| 一区二区三区伦理| 欧美男人的天堂一二区| 久久视频精品在线观看| 国产精品久久久久久久免费软件| 亚洲专区在线视频| 色开心亚洲综合| 欧美手机在线视频| 在线国产视频一区| 国产精品综合色区在线观看| 国产精品久久久久久久免费大片 | 久久av免费看| 91精品91久久久久久| 亚洲精品一区二区三区蜜桃| 亚洲欧美一区二区三区久本道91 | 成人美女视频在线看| www.-级毛片线天内射视视| 成人mm视频在线观看| 亚洲网站在线播放| 亚洲精品中文字幕乱码三区91| av资源网一区| 免费一级特黄毛片| 国产精品成人自拍| 久久久久久亚洲精品不卡| 国产高清免费观看| 一区二区三区中文在线观看| 成年人网站av| 欧美在线三区| av一区二区三区在线观看| 国产原厂视频在线观看| 欧美一区二区三区免费大片 | 欧美日韩午夜剧场| 国产精品一级黄片| 性欧美videos另类喷潮| 久久精品综合一区| 婷婷六月国产精品久久不卡| 亚洲人成亚洲人成在线观看| 天天操天天干天天摸| 国产精品污污网站在线观看| 奇米影视四色在线| 婷婷久久一区| 成人羞羞视频免费| free性欧美| 亚洲男人av电影| 一区二区视频免费| 亚洲欧洲一区二区在线播放| 中文字幕亚洲影院| 欧美另类专区| 精品在线不卡| av在线一区不卡| 久久精品视频在线| 亚洲精品网站在线| 色狠狠一区二区| 麻豆网址在线观看| 成人午夜精品在线| 毛片av免费在线观看| 999久久久国产精品| 不卡一卡2卡3卡4卡精品在| 美女高潮视频在线看| 亚洲视频在线观看免费| 国产精品女人久久久| 亚洲国产精品一区二区久久恐怖片 | 欧美一区二区三区视频在线观看| 亚洲成人生活片| 99久久99久久免费精品蜜臀| 天天干在线影院| 欧美有码视频| 欧美一区二区在线| 精品三级国产| 欧美又大又粗又长| 在线观看h网| 亚洲女人初尝黑人巨大| 97成人在线观看| 亚洲成人你懂的| 国产人妻大战黑人20p| 国产精品夜夜嗨| 黄色一级一级片| 国产精品地址| 日韩欧美精品在线不卡| jizz性欧美2| 国产欧美日韩免费| 无码小电影在线观看网站免费 | av资源一区| 亚洲午夜未满十八勿入免费观看全集| 国产欧美第一页| 日本精品一级二级| 国产亚洲精品成人| 国产精品久久久久桃色tv| 国产精品久久久久久在线观看| 蜜桃视频免费观看一区| 黄色影院一级片| 国产综合久久| www.亚洲一区二区| 精品毛片免费观看| 国产伦一区二区三区色一情| 亚洲一区二区三区久久久| 国产成人精品在线播放| h片精品在线观看| 美女av一区二区| 成年人在线观看网站| 亚洲欧美国产va在线影院| 亚洲va久久久噜噜噜无码久久| 欧美综合一区二区| 国产专区第一页| 亚洲成人久久影院| 九九热国产精品视频| 亚洲丝袜精品丝袜在线| 欧美成人另类视频| 久久久久国产一区二区三区四区 | 成人黄色av| 欧美午夜精品久久久久久蜜| 色狼人综合干| 极品日韩久久| 日本在线中文字幕一区| 久久av一区二区| 欧美大胆a级| 精品国产一区二区三区麻豆免费观看完整版| 久久天堂久久| 亚洲最大福利视频| 欧美成人精品一级| 99re视频在线播放| av成人综合| 国产精品三区在线| 精品国产一区二区三区成人影院| 国产精品入口免费| 日本在线中文字幕一区| 免费精品视频一区二区三区| 亚洲黄页网站| 日韩欧美亚洲精品| 日本一二区不卡| 99亚洲精品视频| 欧美天堂亚洲电影院在线观看 | 国产一区福利在线| 精品国产午夜福利在线观看| 国产一区二区三区久久悠悠色av| 午夜一区二区视频| 国产一区 二区 三区一级| 粗大的内捧猛烈进出视频| 成人三级伦理片| 91精品人妻一区二区三区蜜桃欧美 | 欧美成人高清在线| 免费99精品国产自在在线| 日韩另类在线| 51精品在线观看| 欧洲av一区二区| 91在线视频九色| 国产成人在线中文字幕| 明星裸体视频一区二区| 日韩久久综合| 亚洲小视频在线播放| 91久久在线| 国产一级做a爰片久久| 激情欧美一区二区| 娇妻高潮浓精白浆xxⅹ| 久久久久久久久岛国免费| 亚洲一级二级片| 亚洲国产精品久久人人爱| 无码人妻av免费一区二区三区 | 精品福利视频导航大全| 日韩小视频在线| 国产黄大片在线观看| 国产精品视频不卡| 综合视频一区| 日韩精品一区二区三区四区五区| 久久一本综合| 国产一区二区在线视频播放| 毛片av一区二区三区| 亚洲免费观看在线| 国产精品国产精品国产专区不片| 久草免费新视频| 在线观看视频一区| 亚洲AV无码精品国产| 永久555www成人免费| 男男gaygays亚洲| 国产精品久久久av| 精品资源在线| 中文网丁香综合网| 午夜影院日韩| 亚洲丝袜在线观看| 亚洲国产成人私人影院tom | 日韩视频一区| 免费在线观看污网站| 91色综合久久久久婷婷| 黑鬼狂亚洲人videos| 日韩欧美在线网址 | 亚洲精选中文字幕| 亚洲精品天堂| 国产精品爽黄69天堂a| 欧美福利在线播放网址导航| 强开小嫩苞一区二区三区网站| 性欧美videos另类喷潮| 久久久久久久久久影视| 综合精品久久久| 在线观看亚洲黄色| 日韩激情视频在线播放| 羞羞电影在线观看www| 国产一区二区在线免费| 国产午夜一区| 国产亚洲综合视频| 成人一区在线观看| 青青草原在线免费观看| 欧美酷刑日本凌虐凌虐| 韩国福利在线| 欧美孕妇毛茸茸xxxx| 久草精品视频| 妞干网视频在线观看| 国产不卡一区视频| 538任你躁在线精品视频网站| 欧美性猛交一区二区三区精品| 水中色av综合| 2018日韩中文字幕| 红杏一区二区三区| 成人在线观看你懂的| 高清国产一区二区| 青娱乐91视频| 日韩你懂的电影在线观看| 草莓福利社区在线| 91手机在线视频| 欧美激情一级片一区二区| www激情五月| 亚洲免费观看高清完整版在线| 国产绿帽刺激高潮对白| 九九久久久久久久久激情| 日韩一区二区三区色| 成人区一区二区| 不卡一区二区中文字幕| 国产精品7777777| 日韩大片免费观看视频播放 | 国产日韩中文字幕| 婷婷伊人综合| 性鲍视频在线观看| 亚洲国产欧美在线| 亚洲欧美综合一区二区| 欧美在线国产精品| 国产免费播放一区二区| 亚洲 欧美 日韩系列| 亚洲欧美在线视频| 99精品人妻无码专区在线视频区| 欧美精品中文字幕一区| 国产美女精品视频免费播放软件| 国产精品av免费观看| heyzo一本久久综合| 成人免费毛片视频| 色综合影院在线| 国产在线视频欧美一区| 日韩伦理在线免费观看| 久久网站最新地址| 伊人精品在线视频| 欧美日韩福利在线观看| 亚洲区小说区| 日韩精品视频一二三| 亚洲一区二区三区美女| 欧美色视频免费| 成人av在线网址| 亚洲欧洲视频| 亚洲精品国产精品国自产网站| 欧美日韩国产一区二区三区地区| 成人在线免费看黄| 久久精品人成| 国产一区二区三区免费看| 西西44rtwww国产精品| 中文字幕亚洲欧美一区二区三区 | 日韩成人av网址| 欧美成人家庭影院| 国内少妇毛片视频| 国产视频一区二区在线观看| 国产手机av在线| 4p变态网欧美系列| 91精品国产91久久综合| 亚洲欧美色图视频| 这里只有精品99re| 欧美成人ⅴideosxxxxx| 免费看污污视频| 久久久久九九视频| 黄色三级网站在线观看| 国产精品久久久久久久久借妻| 欧美日韩午夜| 天堂а√在线中文在线鲁大师| 亚洲国产成人精品女人久久久 |