星期三, 10月 29, 2008

唉~真是太遜了!!

天下午,為了能夠持續背誦GRE單字,以免忘記,於是便花時間準備來背,但是之前我是把所有的小字列印出來背誦,但是有個問題,就是背誦的過程中,難免"不小心"看到答案,因此心生利用PTT GRE_verbal版上soga1113大大所寫的背單字小程式來背誦。

##CONTINUE##
然而,當前遇到一個問題,那就是



1. Abiding adj. 持久的 持續不變的(adj.3)
2. Abominable adj. 可惡的 可憎的 天氣惡劣的(adj.4)
3. Aboriginal adj. 原始的(adj.1)
4. Abortive adj. 流產的(adj.5)
5. Aboveboard adj. 光明正大的 磊落的 誠實的(adj.5)
6. Abridge v. 簡略 縮小(adj.2)
7. Abruptly adv. 突然地 倉促地(adj.2)
8. Abstemious adj. (飲食)有節制的(adj.2)
9. Abstemious adj. (飲食)有節制的、儉樸的 (行動)有分寸的 (adj.3)
10. Abstemious adj. 自制的(adj.4)


  改成



Abiding ; adj. 持久的 持續不變的(adj.3)
Abominable ; adj. 可惡的 可憎的 天氣惡劣的(adj.4)
Aboriginal ; adj. 原始的(adj.1)
Abortive ; adj. 流產的(adj.5)
Aboveboard ; adj. 光明正大的 磊落的 誠實的(adj.5)
Abridge ; v. 簡略 縮小(adj.2)
Abruptly ; adv. 突然地 倉促地(adj.2)
Abstemious ; adj. (飲食)有節制的(adj.2)
Abstemious ; adj. (飲食)有節制的、儉樸的 (行動)有分寸的 (adj.3)
Abstemious ; adj. 自制的(adj.4)

  
  也就是要以分號分開單字,以及把前面的數字消除,起先因為最近我想學C,所以想要用C寫寫看,但是不知道為什麼,我用Dev C++在開檔過程中,一直發生錯誤,用matlab寫,又不能讀取中文,於是我轉戰到用之前也有興趣的Python。

  其實寫的觀念很簡單,就是 開啟檔案->讀一行->把頭消去->增加分號->寫到檔案->關閉檔案 如此而已。

  開頭很簡單,去找到數字後面的"."就好,然後就把"."包含之前不要,然而要隔開詞性(即adj.,adv.和v.)則讓我傷透腦筋,一開使也是利用找"."的方式,但是我要在單字和詞性之間加入分號,而且動詞跟形容詞副詞的字數又不一樣,所以不能用"."往前數的方式增加,因為動詞自比較少(v.)所以若是以adj的標準的話,分號很有可能會加到單字裡面,然而利用找到"."之後,在加入條件去比對前面的字是否為"dj"或"dv"或" v",結果不知道為什麼,卻一直跑不出來,後來仔細觀察發現到,每一行單字跟詞性間存在個"\t"分隔,於是改成利用找這個的方式,反而簡化了許多。


f=file("D:\\adj.txt","r")
ff=file("D:\\adj_new.txt","w")
for a in f.readlines():
for i in range(len(a)):
if a[i] == ".":
b=a[i+2:]
#print b
break
for l in range(len(b)-5):
if b[l]=="\t":
c=b[:l+1]+" ; "+b[l+1:];
ff.write(c)
#print c
break



f.close()
ff.close()



  於是終於成功了,不過卻花了很多時間,唉唉~

沒有留言: