关于如何使用python3.3进行文档处理的问题。

文件的大体格式为这样子,文件下载地址为http://course.baidu.com/view/e58ae614cc7931b765ce15fc.html?re=view
问题是,如何将文件格式转化为这种类型。
'的':0.035008,
'一':0.017037.
'是':0.013454,
'不':0.013077,
前者是字符,而后者是使用频率。
除了第一个字『的』以外,使用频率都可以用下个出现概率减上个出现的概率。
例如:『一』的频率就是 5.2045%-3.5008% 。

必须先把文本文件转换成uft8编码。我把转好的版本放在附件里。

代码如下:

"""
Compute frequency of chinese characters
"""

input_file = 'chinese_freq.txt'
output_file = 'chinese_freq_2.txt'


if __name__ == '__main__':

    words = []

    with open(input_file, 'r') as fin:
        prev_f = 0.0
        for lin in fin:
            line = lin.strip().split()
            f = float(line[4][:-1])
            words.append([line[1], f - prev_f])
            prev_f = f

    with open(output_file, 'w') as fout:
        for lin in words:
            fout.write("%s %s%%\n" % (lin[0], lin[1]))


追问

这里卡住了。

追答

    尽量少用中文。。

    还是字符编码的问题,用notepad++把输入文件转换成utf8编码再试。

追问

用notepad++将文本转换成了utf8,但是还是报同样的错误。

追答

with open(input_file, 'r', encoding='utf-8') as fin:
改成这个试试。
======================================
FYI,题主是刚开始学python吗?我的建议是,如果没必要,尽量先用python2。现有的程序或者参考资料都是以python2为主。

追问

把版本换回2.79后,所有问题都引刃而解了。

追答

不客气~

温馨提示:答案为网友推荐,仅供参考