求Python统计英文文件内单词个数的思路,python英文,感谢微博上@刘鑫-Mar
求Python统计英文文件内单词个数的思路,python英文,感谢微博上@刘鑫-Mar
感谢微博上@刘鑫-MarsLiu的TAG每天一个小程序。 你会如何实现上述题目的要求?
#!/usr/bin/env python # -*- coding: utf-8 -*- """ python实现任一个英文的纯文本文件,统计其中的单词出现的个数、行数、字符数 """ file_name = "movie.txt" line_counts = 0 word_counts = 0 character_counts = 0 with open(file_name, 'r') as f: for line in f: words = line.split() line_counts += 1 word_counts += len(words) character_counts += len(line) print "line_counts ", line_counts print "word_counts ", word_counts print "character_counts ", character_counts
以上代码,有哪些改进的地方?如何改进才更加pythonic?
python有1个collections库可以解决你这个问题
#!/usr/bin/python# 这么着,您看您乐意不?import refile_name = 'test.txt'lines_count = 0words_count = 0chars_count = 0words_dict = {}lines_list = []with open(file_name, 'r') as f: for line in f: lines_count = lines_count + 1 chars_count = chars_count + len(line) match = re.findall(r'[^a-zA-Z0-9]+', line) for i in match: # 只要英文单词,删掉其他字符 line = line.replace(i, ' ') lines_list = line.split() for i in lines_list: if i not in words_dict: words_dict[i] = 1 else: words_dict[i] = words_dict[i] + 1print 'words_count is', len(words_dict)print 'lines_count is', lines_countprint 'chars_count is', chars_countfor k,v in words_dict.items(): print k,v
编橙之家文章,
相关内容
- 求Django跨站登录项目思路,django跨项目思路,公司内部的
- 高手能举例说下python语言中元类要怎么理解吗?,pytho
- python过长数据换行通用什么方法,python过长换行通用
- 读取判读python对象所含有的属性方法是什么,判读pyt
- MAC下使用easy_install MySQL-python报错No such file or directory,
- Python Requests连接报错,pythonrequests,新手刚开始学爬虫,
- python将网页保存至本地报TypeError: must be str, not bytes错误
- 一段代码中使用了sqlite有部分不理解的地方,求老师指导
- Python IDE pycharm中可以自动删除行尾空格操作码?,pyt
- Python PIL读取GIF帧画面不清晰是什么原因,pythonpil读取
评论关闭