我目前正在尝试估计每个字符在大量繁体中文字符中使用的次数。我对个字符不感兴趣。该文件还包括标点符号和西方字符。制作一个字符串中的繁体中文字符列表
我正在阅读中文繁体字的示例文件。该文件包含大量繁体中文字符。这是一小部分。
首映鼓掌10分钟评语指不及“花样年华” 该片在柏林首映,完场后获全场鼓掌10分钟王家卫特别为该片剪辑「柏林版本 增减20处赵本山香港戏分被删 在柏林影展放映的“一代宗师”版本 教李小龙武功叶问决战散打王
另一增加的戏分是开场时叶问(梁朝伟饰)
我的策略是读取每一行,将每行分割成一个列表,然后检查每个字符以查看它是否已经存在一个字符的列表或字典。如果该字符还不存在于我的列表或字典中,我会将它添加到该列表中,如果它存在于我的列表或字典中,我将增加该特定字符的计数器。我可能会使用两个列表,一个字符列表和一个包含计数的并行列表。这将是更多的处理,但也应该更容易编码。
我还没有接近这一点的任何地方呢。
我能够成功读取示例文件。然后,我可以为我的文件的每一行创建一个列表。我能够将这些单行输出到我的输出文件中,并重构原始文件,并且传统中文完好无损。
但是,当我尝试制作特定行上每个字符的列表时,我遇到了麻烦。
我已阅读完以下文章。我理解了很多意见,但不幸的是,我无法理解它足以解决我的问题。 How to do a Python split() on languages (like Chinese) that don't use whitespace as word separator?
我的代码如下所示
#!/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()
通过各种测试,我相信下面的行不分裂串线[0]成组成中国字。
A_LINE = list(LINES[0])
output.write(A_LINE[0])
如果您只需要一个中文字符列表,请在您链接的问题中按照建议的答案建议:)。如果你需要通过中国话来分裂,祝你好运,只有令人难以置信的智能程序可以做到这一点。就这样你知道 - 你不需要用文字分割然后按字符分割。你可以马上分割字符,没有什么能阻止你这么做:) – Patashu 2013-02-10 23:26:56
我只需要分割*字符*。我知道中文单词可以是多个字符,但我不需要这些。 但是,文章中列出的解决方案之一不符合我的知识和我的情况: list(u“这是一个句子”) 该代码成功地将每个字符放入列表元素中。但是,由于我正在处理一个名为LINES [0]的变量......我无法成功使用该代码。我尝试了列表(ü“LINES [0]”),但这不会被解释为LINES [0]表示的中文字符串。 – 2013-02-10 23:32:48
然后只需从http://stackoverflow.com/a/3798790/497106接受的答案复制代码,你就完成了:) – Patashu 2013-02-10 23:33:35