如何在python中标记输入文件中的自然英语文本?

如何在python中标记输入文件中的自然英语文本?,python,nltk,Python,Nltk,我想用python标记输入文件请建议我是python的新用户 我读了一些关于正则表达式的文章,但仍然有些混乱,因此请建议任何链接或代码概述。尝试以下内容: import nltk file_content = open("myfile.txt").read() tokens = nltk.word_tokenize(file_content) print tokens NLTK教程中也有很多简单易懂的例子:使用NLTK 如果您的文件很小: 使用上下文管理器打开文件,打开(

我想
用python标记输入文件
请建议我是python的新用户


我读了一些关于正则表达式的文章,但仍然有些混乱,因此请建议任何链接或代码概述。

尝试以下内容:

import nltk
file_content = open("myfile.txt").read()
tokens = nltk.word_tokenize(file_content)
print tokens
NLTK教程中也有很多简单易懂的例子:

使用
NLTK
如果您的文件很小:

  • 使用上下文管理器
    打开文件,打开(…)为x
  • 然后做一个
    .read()
    并用
    word\u tokenize()
[代码]:

from nltk.tokenize import word_tokenize
with open ('myfile.txt') as fin:
    tokens = word_tokenize(fin.read())
from __future__ import print_function
from nltk.tokenize import word_tokenize
with open ('myfile.txt') as fin, open('tokens.txt','w') as fout:
    for line in fin:
        tokens = word_tokenize(line)
        print(' '.join(tokens), end='\n', file=fout)
如果您的文件较大:

  • 使用上下文管理器
    打开文件,打开(…)为x
  • 使用for循环逐行读取文件
  • 使用
    word\u tokenize()
  • 输出到所需格式(设置写入标志)
[代码]:

from nltk.tokenize import word_tokenize
with open ('myfile.txt') as fin:
    tokens = word_tokenize(fin.read())
from __future__ import print_function
from nltk.tokenize import word_tokenize
with open ('myfile.txt') as fin, open('tokens.txt','w') as fout:
    for line in fin:
        tokens = word_tokenize(line)
        print(' '.join(tokens), end='\n', file=fout)

使用SpaCy
他可能不想标记一个自然文本,而是想标记一个正式语言的源代码。nltk用于解析自然语言。对于正式语言,可以使用ply。我广泛使用它来构建自定义编译器。使用ply,您还可以解析并编译成一个抽象语法树。@nagylzs-问题被标记为“nltk”。您想标记什么?您需要创建通用标记器吗?或者您是否需要特定(编程)语言的标记器/解析器?