我目前正在尝试估计每个字符在大量繁体汉字样本中的使用次数。我对字符而不是文字感兴趣。该文件还包括标点符号和西方字符。
我正在阅读繁体中文字符的示例文件。该文件包含大量繁体中文字符样本。这是一个小子集:
映鼓掌10分钟评语指不及《花样年华》该片在柏林首映,首场后获全场10分钟。影展功放的《李一代师》版本教小龙武叶问决战散打王</p>
另一个增加的戏分是开场时叶问(梁朝伟饰)</p>
我的策略是读取每一行,将每一行拆分为一个列表,然后检查每个字符以查看它是否已存在于列表或字符字典中。如果该字符尚不存在于我的列表或字典中,我会将其添加到该列表中,如果它确实存在于我的列表或字典中,我将增加该特定字符的计数器。我可能会使用两个列表,一个字符列表和一个包含计数的并行列表。这将是更多的处理,但也应该更容易编码。
我还没有接近这一点。
我能够成功读取示例文件。然后我可以为我的文件的每一行列出一个列表。我可以将这些单独的行打印到我的输出文件中,然后重新构建原始文件,繁体中文就完好无损。
但是,当我尝试列出特定行上的每个字符时,我遇到了麻烦。
我已经阅读了以下文章。我理解了许多评论,但不幸的是,无法理解足够多的评论来解决我的问题。 如何在不使用空格作为单词分隔符的语言(如中文)上执行 Python split()?
我的代码如下所示
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import codecs
wordfile = open('Chinese_example.txt', 'r')
output = open('Chinese_output_python.txt', 'w')
LINES = wordfile.readlines()
通过各种测试,我确信以下行没有将字符串 LINES[0] 拆分为其组成汉字。
A_LINE = list(LINES[0])
output.write(A_LINE[0])