In [10]:
#encoding='utf-8'
import jieba

jieba.set_dictionary('D:/dict/dict.txt')
#jieba.set_dictionary('D:/dict/dict_keyw.txt')
content=[]
s="最近在零時政府 g0v 舉辦 Summit 2016 後,有許多媒體紛紛以公民科技為題,報導 g0v 零時政府這幾年來的貢獻,以及參與者的熱情。然而,零時政府之所以是零時政府,並不只是公民科技「用什麼技術做了什麼」,或是做出了哪些酷炫的網頁;大家所看到的成果或網站,只是公民科技的末端結果與呈現,事實上,所有參與者共同協作的精神,才是維繫零時政府更重要的樞紐。如果有機會參與 g0v 的黑客松,就會驚訝於這有別傳統組織的「非組織」。在 g0v 的黑客松場上,只要有想法,就可以花 5 分鐘時間上台述說,招兵買馬;只要點子夠吸引人,就會有人一起參與討論、接著各自開工去撰寫程式完成工作;如果一次做不完,大家會在網路上相約,透過網路以遠端協作的方式繼續完成各自的部分。當然,g0v 的黑客松都是沒有營利的專案,因此有時候如果有工作在身上,就很難擠出時間;若沒有成就感吸引人,很多人也是會做不下去而「棄坑」(放棄貢獻 g0v 的專案)。換句話說,在 g0v 裡面,就是各個不同的點子在競逐工程師,如果點子夠好、話題夠熱,很快就有許多人一起協作,產出很棒的成果;但如果話題不夠吸引人,就得靠發起人自己慢慢學習、自己緩慢地填坑,否則就只能放棄了。有人可能會問,假日好端端地在家休息就好,為什麼要虛擲難得的假日,花上一整天,跑到外頭去和一群陌生人一起完成自己份外的工作?這問題的答案,就是開放參與的協作精神,也是零時政府的核心價值。從自由軟體運動中許多熱血工程師身上,就能看出一些端倪。事實上,g0v 一開始的形式的確很像自由軟體運動,只是對象從自由軟體改為開放政府,參與的人從工程師擴大為積極參與公共議題的公民。自由軟體運動希望藉著開放原始碼,讓更多人在使用軟體的時候,一方面可以藉著原始碼了解程式運作,甚至自己動手修改出屬於自己的程式。當然,這個過程可能要花費時間去看懂程式碼,或需要去理解如何撰寫程式;不過,由於原始碼是開放取得,因此也可以藉著學習別人的撰寫方式來強化自己的技術。如果學習了閱讀、修改程式碼的能力,就可以自由建立軟體分支(被稱為 fork),修改成自己的版本,並開放給其他人使用;別人也能自由取用這些成果,修改成他們要的版本。如果原始開發者覺得這樣的修改不錯,也可以將別人修改後的版本合併(merge)回原始的版本。在這個過程中,藉由開放與再利用,軟體工程師可以從別人的成果上修改出自己的成果,並幫助別人使用。這讓許多人可以不用重頭打造輪子,從既有的軟體上自由的修改出屬於自己的版本。因此,對許多軟體工程師來說,把自己軟體的原始碼開放釋出,甚至還有一份不計較利弊得失的豁達,或是「成事不必在我」的胸襟。只要別人更有能力,歡迎他們站在我的肩膀上,做出更棒的軟體。許多人的熱血貢獻,讓自由軟體社群協作出許多很棒的程式,如編譯 C 語言程式碼的 gcc、編輯器 vim 與 emacs,瀏覽器 Firefox,甚至是 Linux 作業系統的內核。也有人專注在把這些工具組合成可用的 GNU/Linux,比如眾多的發行版本,如 Red Hat、Ubuntu、OpenSUSE 等等。藉由開放與再利用,軟體工程師可以從別人的成果上修改出自己的成果,並幫助別人使用。這讓許多人可以不用重頭打造輪子,從既有的軟體上自由的修改出屬於自己的版本。(圖片/flickr@david.lifu.huang, CC BY 4.0)"
content.append('/'.join(jieba.cut(s)))
for i in content:
    print i


Building prefix dict from D:\dict\dict.txt ...
Loading model from cache c:\users\king4647\appdata\local\temp\jieba.u91ec807a342c0048303635e9908e56c6.cache
Loading model cost 1.012 seconds.
Prefix dict has been built succesfully.
最近/在/零時/政府/ /g0v/ /舉辦/ /Summit/ /2016/ /後/,/有/許多/媒體/紛紛/以/公民/科技/為題/,/報導/ /g0v/ /零時/政府/這幾年來/的/貢獻/,/以及/參與者/的/熱情/。/然而/,/零時/政府/之所以/是/零時/政府/,/並不/只是/公民/科技/「/用/什麼/技術/做/了/什麼/」/,/或是/做出/了/哪些/酷炫/的/網頁/;/大家/所/看到/的/成果/或/網站/,/只是/公民/科技/的/末端/結果/與/呈現/,/事實上/,/所有/參與者/共同/協作/的/精神/,/才/是/維繫/零時/政府/更/重要/的/樞紐/。/如果/有/機會/參與/ /g0v/ /的/黑客/松/,/就/會/驚訝/於/這/有別/傳統/組織/的/「/非/組織/」/。/在/ /g0v/ /的/黑客/松/場上/,/只要/有/想法/,/就/可以/花/ /5/ /分鐘/時間/上台/述說/,/招兵買馬/;/只要/點子/夠/吸引/人/,/就/會/有人/一起/參與/討論/、/接著/各自/開工/去/撰寫/程式/完成/工作/;/如果/一次/做/不/完/,/大家/會/在/網路上/相約/,/透過/網路/以/遠端/協作/的/方式/繼續/完成/各自/的/部分/。/當然/,/g0v/ /的/黑客/松/都/是/沒有/營利/的/專案/,/因此/有時候/如果/有/工作/在/身上/,/就/很/難/擠出/時間/;/若/沒有/成就感/吸引/人/,/很多/人/也/是/會/做/不/下去/而/「/棄坑/」/(/放棄/貢獻/ /g0v/ /的/專案/)/。/換句話說/,/在/ /g0v/ /裡面/,/就是/各個/不同/的/點子/在/競逐/工程師/,/如果/點子/夠好/、/話題/夠熱/,/很快/就/有/許多/人/一起/協作/,/產出/很棒/的/成果/;/但/如果/話題/不夠/吸引/人/,/就/得/靠/發起人/自己/慢慢/學習/、/自己/緩慢/地填坑/,/否則/就/只能/放棄/了/。/有人/可能/會問/,/假日/好端端/地/在家/休息/就/好/,/為/什麼/要/虛擲/難得/的/假日/,/花上/一整天/,/跑/到/外頭/去/和/一群/陌生人/一起/完成/自己/份外/的/工作/?/這/問題/的/答案/,/就是/開放/參與/的/協作/精神/,/也/是/零時/政府/的/核心/價值/。/從/自由/軟體/運動/中/許多/熱血/工程師/身上/,/就/能/看出/一些/端倪/。/事實上/,/g0v/ /一/開始/的/形式/的確/很/像/自由/軟體/運動/,/只是/對象/從/自由/軟體/改為/開放/政府/,/參與/的/人/從/工程師/擴大/為/積極/參與/公共/議題/的/公民/。/自由/軟體/運動/希望/藉/著/開放/原始/碼/,/讓/更/多/人/在/使用/軟體/的/時候/,/一方面/可以/藉/著/原始/碼/了解/程式/運作/,/甚至/自己/動手/修改/出/屬於/自己/的/程式/。/當然/,/這個/過程/可能/要花費/時間/去/看/懂/程式碼/,/或/需要/去/理解/如何/撰寫/程式/;/不過/,/由於/原始/碼是/開放/取得/,/因此/也/可以/藉/著/學習/別人/的/撰寫/方式/來/強化/自己/的/技術/。/如果/學習/了/閱讀/、/修改/程式碼/的/能力/,/就/可以/自由/建立/軟體/分支/(/被/稱/為/ /fork/)/,/修改/成/自己/的/版本/,/並/開放/給/其他人/使用/;/別人/也/能/自由/取用/這些/成果/,/修改/成/他們/要/的/版本/。/如果/原始/開發者/覺得/這樣/的/修改/不錯/,/也/可以/將/別人/修改/後/的/版本/合併/(/merge/)/回/原始/的/版本/。/在/這個/過程/中/,/藉由/開放/與/再/利用/,/軟體/工程師/可以/從/別人/的/成果/上/修改/出/自己/的/成果/,/並/幫助/別人/使用/。/這讓/許多/人/可以/不用/重頭/打造/輪子/,/從/既有/的/軟體/上/自由/的/修改/出/屬於/自己/的/版本/。/因此/,/對/許多/軟體/工程師/來說/,/把/自己/軟體/的/原始/碼/開放/釋出/,/甚至/還有/一份/不/計較/利弊得失/的/豁達/,/或是/「/成事/不必/在/我/」/的/胸襟/。/只要/別人/更/有/能力/,/歡迎/他們/站/在/我/的/肩膀/上/,/做出/更棒/的/軟體/。/許多/人/的/熱血/貢獻/,/讓/自由/軟體/社群/協作/出/許多/很棒/的/程式/,/如/編譯/ /C/ /語言/程式碼/的/ /gcc/、/編輯器/ /vim/ /與/ /emacs/,/瀏覽器/ /Firefox/,/甚至/是/ /Linux/ /作業系統/的/內核/。/也/有人/專注/在/把/這些/工具/組合成/可用/的/ /GNU///Linux/,/比如/眾多/的/發行/版本/,/如/ /Red/ /Hat/、/Ubuntu/、/OpenSUSE/ /等等/。/藉由/開放/與/再/利用/,/軟體/工程師/可以/從/別人/的/成果/上/修改/出/自己/的/成果/,/並/幫助/別人/使用/。/這讓/許多/人/可以/不用/重頭/打造/輪子/,/從/既有/的/軟體/上/自由/的/修改/出/屬於/自己/的/版本/。/(/圖片///flickr/@/david/./lifu/./huang/,/ /CC/ /BY/ /4.0/)

In [21]:
f = open('D:/dict/dict.txt', 'r')
f2= open('newdict.txt', 'w')

for j in f.readlines():
    #print j
    a=j.replace(" ","|")
    
    f2.write(a)

In [49]:
import re

f = open('newdict.txt', 'r')
f2= open('newdict1.txt', 'w')

for j in f.readlines():
    m = re.match('.*(\w+)|(\w+)|(\w+)' ,j)
    if m.group(1)=="z":
        a=j.replace("z","0x40000000")
        b=a.replace("n","")
        f2.write(b)
    elif m.group(1)=="n":
        a=j.replace("n","0x00100000")
        f2.write(a)
    elif m.group(1)=="v":
        a=j.replace("v","0x04000000")
        f2.write(a)
    elif m.group(1)=="ad":
        a=j.replace("ad","0x08000000")
        f2.write(a)
    elif m.group(1)=="t":
        a=j.replace("t","0x00004000")
        b=a.replace("nr","")
        f2.write(b)
    elif m.group(1)=="m":
        a=j.replace("m","0x00010000")
        f2.write(a)
    else:
        a=j.replace(m.group(1),"0x00000000")
        b=a.replace("n","")
        c=b.replace("z","")
        d=c.replace("nr","")
        e=d.replace("rf","")
        f2.write(e)

In [117]:
import re
one=[]
two=[]
three=[]

f = open('newdict2.txt', 'r')

for j in f.readlines():
    a=j.split("|")
    one.append(a[0])
    two.append(a[1])
    three.append(a[2].strip())

In [124]:
f = open('newdict3.txt', 'w')
for i in range(0,584504):
    f.write(one[i]+"|"+three[i]+"|"+two[i]+'\n')
f.close


Out[124]:
<function close>

In [119]:
for i in three:
    #print i


  File "<ipython-input-119-1eea33997518>", line 3
    
    ^
IndentationError: expected an indented block

In [ ]:


In [ ]:


In [ ]: