如何跳过"姓名"从文件中读取文本时?

时间:2015-01-27 10:52:56

标签: python file python-2.7 input

我正在编写一个程序,其中iam应该从文件中读取,跳过所有人的名字并处理其他信息。

我应该使用什么逻辑来跳过阅读名称。

我从文件中读取文字,然后使用它们的出现频率制作文字云。 对于像文章这样的琐事我做了一个列表,并确保如果读取的单词在本文列表中,则不计算它们。(我是用字典做的)

但是我无法理解如何跳过阅读姓名。

WordList=[]

with open('file.txt','r') as f:
    for line in f:
        for word in line.split():
            if len(word)>3:
                if word not in IgList:
                    WordList.append(word.lower())


# Get a set of unique words from the list

word_set =[]


for word in WordList[::-1]:
    if word not in word_set:
        word_set.append(word)


# create your frequency dictionary
freq = {}
# iterate through them, once per unique word.
for word in word_set:
    freq[word] = WordList.count(word) / float(len(WordList))

size=[]##Size of each word is stored here
for i in word_set:
    size.append(100*freq[i])

for i in range(0,len(word_set)):
    print size[i],word_set[i]

2 个答案:

答案 0 :(得分:0)

假设句子通常以文章开头而“名称”以大写字母

开头
IgList=list of articles 


with open('file.txt','r') as f:
    for line in f:
        for word in line.split():
                if word not in IgList:
                    if word[0] not in word.upper():##Cheking if first letter is Capital
                        WordList.append(word.lower())

如果一个单词以大写字母开头,则会被删除。 可以编写额外的代码来跳过第一个读取的单词。

答案 1 :(得分:-2)

with open("filename") as f:
    rd=f.readlines()
    print (rd[:x])

xnames之后的索引号,假设您知道文件中的名称在哪里。基本上它会跳过这些名字。例如,如果您的文件是这样的;

John 25 USA
Mary 26 Bangladesh
Usain 63 Republic of the Congo

你必须写;

print (rd[1:])

或者如果是这样的话;

63 Republic of the Congo Usain
26 Bangladesh Mary
25 USA John

你必须输入;

print (rd[:1])