在Python中按字符串读取文件

时间:2014-10-29 01:34:26

标签: python file split

嗨我是新手与python,我想通过字符串读取文件。 该文件具有以下结构:

  

semilla

     

n_galleria t_espera t_llegada

     

p_ticket t_servicio

     

n_colosso min_colosso max_colosso

     

n_prisionero m_prisionero miu_prisionero sigma_prisionero

     

n_david

     

p_decision n_orcagna miu_orcagna sigma_orcagna

     

n_libreria p_libreria min_libreria max_libreria

直到现在我才知道:

f = open("/tmp/entrada.txt")
g = open("/tmp/salida.txt", "w+")

 for linea in f.readlines():
    line = linea.split(' ')


f.close()
g.close()

btw,文件结构中的每个字段都是变量的名称。我的意思是,首先,要保存一个名为" semilla"的变量。与entrada.txt的价值

3 个答案:

答案 0 :(得分:1)

这是天真的解决方案..但很容易理解:

tokens = []    
for linea in f.readlines():
    line_content = linea.split(' ')
    for token in line_content:
        tokens.append(token)
print(tokens)

答案 1 :(得分:0)

如果用“word”表示你希望能够通过两个空格迭代从文本其余部分分隔的每个子字符串,你可以这样做:

for word in f.read().split(' '):
    do_something_to_string

如果您实际上不需要按行解析,则无需逐行读取文件。

答案 2 :(得分:0)

对于单词标记化,最好使用nltk模块来处理任何类型的单词分隔符。所以你可以这样做:

import nltk

f = open("/tmp/entrada.txt").read()

# return the list of words
words = nltk.word_tokenize(f)

对于您拥有的任何文本,这应该更加健壮。