Python学习(1)

  • skawu
  • LV5工程师
  • |      2018-02-26 15:39:14
  • 浏览量 1146
  • 回复:0
根据视频教程学习的一个Python例子:统计《西游记》这本小说的字数。在这里做一个学习过程的记录。 首先贴代码(源代码无法上传,想使用的就复制粘贴一下吧): /********************************************************************************************************/ #!/usr/bin/env python #coding:utf8 import sys reload(sys) sys.setdefaultencoding("utf8") fr = open('xyj.txt', 'r') characters = stat = {} for line in fr: line = line.strip() if len(line) == 0: continue line = unicode(line) #将文本转为unicode,便于处理汉字 for x in xrange(0, len(line)): if line in : continue if not line in characters: characters.append(line) if not stat.has_key(line): stat] = 0 stat] += 1 print len(characters) print len(stat) # lambda生成一个临时函数 # d表示字典的每一对键值对,d为key,d为value # reverse为True表示降序排序 stat = sorted(stat.items(), key = lambda d:d, reverse = True) # 控制台输出信息 print stat # key值以Unicode编码输出 for item in stat: print item + ': ' + str(item) # 输出信息保存到文件 fw = open('result.csv', 'w') for item in stat: fw.write(item + ': ' + str(item) + '\n') fr.close() fw.close() /******************************************************************************************/ 有个问题就是stat = sorted(stat.items(), key = lambda d:d, reverse = True)这句话只要屏蔽掉,下面的print item + ': ' + str(item)和fw.write(item + ': ' + str(item) + '\n')就会有问题,报错: 这个问题发问答里了,等待大神帮忙解答下。 将附件xyj.txt和代码放在同一目录下,执行即可。 整个代码测试通过,可以生成文件result.csv
  • 0
  • 收藏
  • 举报
  • 分享
我来回复

登录后可评论,请 登录注册

所有回答 数量:0
x
收藏成功!点击 我的收藏 查看收藏的全部帖子