Python學(xué)習(xí)-應(yīng)用技巧

  1. 獲取所有大寫穗慕、小寫字母和數(shù)字的方法
>>> import string
>>> string.ascii_uppercase        # ABCDEFGHIJKLMNOPQRSTUVWXYZ
>>> string.ascii_lowercase        # abcdefghijklmnopqrstuvwxyz
>>> string.digits                 # 0123456789
>>> string.ascii_letters          # 所有大小寫
  1. 生成隨機(jī)碼
>>> import string
>>> import random
>>> def id_generator(size=6, chars=string.ascii_uppercase + string.digits):
...    return ''.join(random.choice(chars) for _ in range(size))
...
>>> id_generator()
'G5G74W'
>>> id_generator(3, "6793YUIO")
'Y3U'
  1. 測(cè)量腳本或方法運(yùn)行時(shí)間
>>> import cProfile
>>> cProfile.run('foo()')

# 測(cè)量腳本
python -m cProfile myscript.py
  1. 通過方法名的字符串來調(diào)用該方法
>>> class Foo():
...     def run(self):
...             print 'run method'
...

# 方法一:使用eval
>>> foo = Foo()
>>> method = eval('foo.run')
>>> method()
run method

#方法二:使用getattr(推薦)
>>> foo = Foo()
>>> method = getattr(foo, 'run')
>>> method()
run method
  1. 字符串翻轉(zhuǎn)
>>> 'hello'[::-1]
  1. yield的用法
def fab(max): 
    n, a, b = 0, 0, 1 
    while n < max: 
        yield b 
        # print b 
        a, b = b, a + b 
        n = n + 1 

結(jié)論:一個(gè)帶有 yield 的函數(shù)就是一個(gè) generator,它和普通函數(shù)不同妻导,生成一個(gè) generator 看起來像函數(shù)調(diào)用逛绵,但不會(huì)執(zhí)行任何函數(shù)代碼怀各,直到對(duì)其調(diào)用 next()(在 for 循環(huán)中會(huì)自動(dòng)調(diào)用 next())才開始執(zhí)行。雖然執(zhí)行流程仍按函數(shù)的流程執(zhí)行术浪,但每執(zhí)行到一個(gè) yield 語句就會(huì)中斷瓢对,并返回一個(gè)迭代值,下次執(zhí)行時(shí)從 yield 的下一個(gè)語句繼續(xù)執(zhí)行胰苏∷队迹看起來就好像一個(gè)函數(shù)在正常執(zhí)行的過程中被 yield 中斷了數(shù)次,每次中斷都會(huì)通過 yield 返回當(dāng)前的迭代值硕并。

  1. range和xrange區(qū)別
for i in range(1000): pass

for i in xrange(1000): pass
  • range: 生成一個(gè) 1000 個(gè)元素的 List法焰。
  • xrange: 不會(huì)生成一個(gè) 1000 個(gè)元素的 List,而是在每次迭代中返回下一個(gè)數(shù)值倔毙,內(nèi)存空間占用很小埃仪。因?yàn)?xrange 不返回 List,而是返回一個(gè) iterable 對(duì)象陕赃。
  1. 檢查一個(gè)字符串是否是一個(gè)數(shù)字
>>> "123".isdigit()
  1. 將列表等分成同樣大小的塊
>>> L = range(1, 100) 
>>> n = 10
>>> tuple(L[i:i+n] for i in xrange(0, len(L), n))
  1. 判斷文件是否存在
>>> import os
>>> os.path.isfile(fname)
  1. 對(duì)字典排序
>>> import operator
>>> x = {1: 2, 3: 4, 4:3, 2:1, 0:0}
# 通過字典鍵排序
>>> sorted_x = sorted(x.items(), key=operator.itemgetter(0))

#通過字典值排序
>>> sorted_x = sorted(x.items(), key=operator.itemgetter(1))

或者

sorted(d.items(), key=lambda x: x[1])
  1. 在終端里顯示顏色
>>> from termcolor import colored
>>> print colored('hello', 'red'), colored('world', 'green')
  1. 在循環(huán)中獲取列表索引(數(shù)組下標(biāo))
>>> L = [8, 23, 45, 12, 78]
>>> for idx, val in enumerate(L):
        print ids, val
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末卵蛉,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子么库,更是在濱河造成了極大的恐慌傻丝,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,110評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件诉儒,死亡現(xiàn)場(chǎng)離奇詭異葡缰,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)允睹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,443評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門运准,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人缭受,你說我怎么就攤上這事「没ィ” “怎么了米者?”我有些...
    開封第一講書人閱讀 165,474評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)宇智。 經(jīng)常有香客問我蔓搞,道長(zhǎng),這世上最難降的妖魔是什么随橘? 我笑而不...
    開封第一講書人閱讀 58,881評(píng)論 1 295
  • 正文 為了忘掉前任喂分,我火速辦了婚禮,結(jié)果婚禮上机蔗,老公的妹妹穿的比我還像新娘蒲祈。我一直安慰自己甘萧,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,902評(píng)論 6 392
  • 文/花漫 我一把揭開白布梆掸。 她就那樣靜靜地躺著扬卷,像睡著了一般。 火紅的嫁衣襯著肌膚如雪酸钦。 梳的紋絲不亂的頭發(fā)上怪得,一...
    開封第一講書人閱讀 51,698評(píng)論 1 305
  • 那天,我揣著相機(jī)與錄音卑硫,去河邊找鬼徒恋。 笑死,一個(gè)胖子當(dāng)著我的面吹牛欢伏,可吹牛的內(nèi)容都是我干的入挣。 我是一名探鬼主播,決...
    沈念sama閱讀 40,418評(píng)論 3 419
  • 文/蒼蘭香墨 我猛地睜開眼颜懊,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼财岔!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起河爹,我...
    開封第一講書人閱讀 39,332評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤榛做,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后庶橱,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體拱雏,經(jīng)...
    沈念sama閱讀 45,796評(píng)論 1 316
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,968評(píng)論 3 337
  • 正文 我和宋清朗相戀三年媳维,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了酿雪。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,110評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡侄刽,死狀恐怖指黎,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情州丹,我是刑警寧澤醋安,帶...
    沈念sama閱讀 35,792評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站墓毒,受9級(jí)特大地震影響吓揪,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜所计,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,455評(píng)論 3 331
  • 文/蒙蒙 一柠辞、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧主胧,春花似錦叭首、人聲如沸习勤。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,003評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽姻报。三九已至,卻和暖如春间螟,著一層夾襖步出監(jiān)牢的瞬間吴旋,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,130評(píng)論 1 272
  • 我被黑心中介騙來泰國(guó)打工厢破, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留荣瑟,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,348評(píng)論 3 373
  • 正文 我出身青樓摩泪,卻偏偏與公主長(zhǎng)得像笆焰,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子见坑,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,047評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容