2011-10-27 27 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! –