記不得是去年年底還是今年年初開始的python之旅,雖然只經(jīng)歷了短短兩周,但這兩周給我?guī)淼氖斋@卻一直在重復(fù)不斷的影響我。
記得最初,大概11月左右,有這么一份數(shù)據(jù):

每一條都是關(guān)于一個(gè)app的信息。每一條里包含3個(gè)信息,信息與信息是以“,”作為分隔。例如第一行,就是一個(gè)app的名稱,包名,然后就是所有跟這個(gè)app有關(guān)的標(biāo)簽(如Bye Bubble這個(gè)游戲,標(biāo)簽有前視角,大腦迷,排列,2d,等等)。一共4.5w條app信息。
需求:要知道每一個(gè)標(biāo)簽下所涵蓋的app,然后根據(jù)涵蓋的app數(shù)量進(jìn)行倒敘,得出涵蓋app數(shù)量最多的標(biāo)簽。
直接上代碼:
__author__ ='xujingjing'
# encoding: utf-8
ft =open("/Users/xujingjing/Downloads/test/t.txt",'r').readlines()
a =str(ft)[2:-2]
d = {}
for x in a.split("\\r"):
pkg = x.replace('"',"").split(",",2)[1]
tags = x.replace('"',"").split(",",2)[2]
tagslist1 = tags.split(",")
for y in tagslist1:
if not y in d:
d[y]=[pkg,]
#print d
else:
d[y].append(pkg)
printd
dLen = {}
for z in d:
dLen[z] =len(d[z])
print dLen
dsort =sorted(dLen.iteritems(),key=lambdaa:a[1],reverse=True)
print dsort
這里對(duì)代碼我并不想做什么解釋。那些看上去特別簡單的代碼,其實(shí)花了我近兩周才弄明白了點(diǎn)皮毛。兩周內(nèi)我從完全python的毛都不懂變化到能小運(yùn)用python進(jìn)行數(shù)據(jù)處理,雖然我對(duì)python菜得不能再菜了,但至少我比那些大鳥更懂初學(xué)者的心理。我想以自己為例告訴那些內(nèi)心對(duì)編程擁有莫名恐懼的人,去擁抱內(nèi)心的恐懼吧,我去年10月左右就知道了python,但出于內(nèi)心對(duì)編程的恐懼一直都沒下手。結(jié)果直到好哥們離職后,這個(gè)需求出來,我發(fā)現(xiàn)excel根本不能處理,才想到了哥們所說的強(qiáng)大的python。那時(shí)周圍也沒人懂python,對(duì)我的學(xué)習(xí)造成了很大的障礙。哥們給我講了一次之后,我就自己慢慢琢磨慢慢琢磨,翻看各種視頻,終于兩周后入了小門,才發(fā)現(xiàn),世界原來如此不一樣。像python這樣的語言,其實(shí)本質(zhì)上跟外語類似,就是語言而已,只要你不斷的去記,去敲,總可以慢慢領(lǐng)悟皮毛。
當(dāng)然學(xué)習(xí)過程中由于無人指導(dǎo),走了很多彎路做了很多無用功,例如買的python的書翻了半天連第一章都沒翻完,看著無比多的概念,想死的心都有。后來才發(fā)現(xiàn),跟著書學(xué)的話,太慢,就類似于你學(xué)外語去背字典。不是個(gè)人能力問題,是方法問題。多看看源代碼,從實(shí)踐入手,不懂就查,通過查詢,反過來去補(bǔ)系統(tǒng)知識(shí),更加實(shí)用也更有成就感。增強(qiáng)你學(xué)習(xí)的自信心。
最難的就是第一步,第一步的核心就是心態(tài),心態(tài)就是恐懼,走出去,擁抱恐懼,總可以走出一片天空。不僅僅是對(duì)python,對(duì)工作,對(duì)生活,亦如此。