2011-10-27 59 views
0

您的目標是提示用戶輸入文本文件進行分析。您還將提供 帶有停用詞的文件 - 當您分析文件時將被忽略的詞。創建一致性後,打印 示例中指示的一致性結果。對於在和諧的每個字,你將打印:與Python的協調

  • 出現
  • 每次出現的總次數:
    • 文件中的行號(第一行是行# 1)
    • 本地上下文。本地上下文是具有全部大寫字母的指定單詞的原始行。

這是我到目前爲止有:

import string 
file_str = raw_input("What file to analyze:") 
file_obj = open(file_str) 
for line in file_obj.readlines(): 
    line = line.strip() 
    split_line = line.split() 
    for word in split_line: 
     word = word.lower() 
     word = word.strip(string.punctuation) 

我不知道從哪裏裏去!

+2

最近幾天在SO上也有類似的問題。你可能想瀏覽一下檔案。 –

+0

你有一個語法問題:縮進第四行下面的所有代碼。你如何定義一致性? – Simon

+0

你試圖做什麼,你卡住了? – millimoose

回答

0

你需要的一件事是在外部循環的每次迭代中增加的計數器,因爲要求你提供一些關於行號的信息。

然後下一步是要有一本字典。循環外

words = {} 

每次遇到單詞時,請檢查它是否已經是字典中的鍵。

if word in words: 

如果是這樣,更新條目

word_info = words[word] 
    word_info = // something changed 
    // possibly you need this depending on the type of word_info 
    words[word] = word_info 

如果沒有,創建一個新條目

else: 
    word_info = // something 
    words[word] = word_info 

我把它留給你找出什麼樣的價值word_info的應該。

+0

我們我們給出的txt與storys文件,如itsy bitsy的蜘蛛 ,我們不得不指望在它的主詞,然後利用它 輸出示例: 分析哪些文件:itsy_bitsy_spider.txt 一致性文件itsy_bitsy_spider。 txt itsy:Total Count:2 Line:1:ITSY Bitsy蜘蛛爬上水龍頭 Line:4:ITSY Bitsy蜘蛛再次上了水嘴! 抓取:總數:1 行:1:Itsy bitsy的蜘蛛爬上水噴口 噴口:總數:2 行:1:Itsy bitsy的蜘蛛抓取了水SPOUT 線:4:和Itsy Bitsy蜘蛛又回到了SPOUT! –