Python每日一题 007
题目
你有一个目录,放了你一个月的日记,都是 txt,为了避免分词的问题,假设内容都是英文,请统计出你认为每篇日记最重要的词。
很难客观的说每篇日记中最重要的词是什么,所以在这里就仅仅是将每篇日记中出现频数最高的词作为最重要的词。同时过滤掉一些词诸如【I,is,are,has,and,or】等等
代码
# -*- coding: utf-8 -*-
from collections import Counter
import re
import string
import os
def get_word(filepath):
#过滤词汇
filter_word=['she','i','the','is','are','you','we','and','to','or','that','what','has',
'have','been','do','did','a','an',"'",'he','of','was','had','they','his','in','on',
'She','were','it','Mrs','The']
fp=open(filepath,'r')
content=fp.read()
rule='[a-zA-Z0-9\']+'
words=re.findall(rule,content)
wordlist = Counter(words)
for i in filter_word:
wordlist[i]=0
fp.close()
# most_common 按出现数次从高到底排序
return wordlist.most_common()[0]
def get_file(path):
for textname in os.listdir(path):
textfile=os.path.join(path,textname)
most_important=get_word(textfile)
print("文章 ---{} ----统计".format(textname))
print("最重要的词为:{}".format(most_important[0]))
print("出现次数为:{}\n".format(repr(most_important[1])))
if __name__ == '__main__':
get_file('Text')
PS:代码很多场景无法适应,比如出现中文字符,可以更好的完善做一个格式化的字数统计工具
Python每日一题 007的更多相关文章
- Python:每日一题007
题目: 输出 9*9 乘法口诀表. 程序分析: 分行与列考虑,共9行9列,i控制行,j控制列. 个人思路及代码: 第一版: for i in range(1,10): for j in range(1 ...
- Python每日一题 004
将 0001 题生成的 200 个激活码(或者优惠券)保存到 Redis 非关系型数据库中. 代码 import redis import uuid # 创建实例 r=redis.Redis(&quo ...
- Python每日一题 003
将 002 题生成的 200 个激活码(或者优惠券)保存到 MySQL 关系型数据库中. 代码 import pymysql import uuid def get_id(): for i in ra ...
- Python每日一题 002
做为 Apple Store App 独立开发者,你要搞限时促销,为你的应用生成激活码(或者优惠券),使用 Python 如何生成 200 个激活码(或者优惠券)? 在此生成由数字,字母组成的20位字 ...
- Python每日一题 009
题目 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. 代码 参照网络上代码 # coding: utf-8 import os import re # ...
- Python每日一题 008
题目 基于多线程的网络爬虫项目,爬取该站点http://www.tvtv.hk 的电视剧收视率排行榜 分析 robots.txt User-agent: Yisouspider Disallow: / ...
- Python每日一题 006
题目 你有一个目录,装了很多照片,把它们的尺寸变成都不大于 iPhone5 分辨率的大小. 如果只是单纯的通过将图片缩放到iPhone5分辨率大小,显然最后呈现出来的效果会很糟糕.所以等比例缩放到长( ...
- Python每日一题 005
任一个英文的纯文本文件,统计其中的单词出现的个数. 代码 # coding:utf-8 import re def get_word(filename): fp=open(filename," ...
- Python每日一题 001
Github地址:https://github.com/Yixiaohan/show-me-the-code Talk is Cheap, show me the code. --Linus Torv ...
随机推荐
- python中nonlocal 的作用域
''' nonlocal关键字用来在函数或其他作用域中使用外层(非全局)变量. ''' def work(): x = 0 def new_work(): nonlocal x x=x+3 retur ...
- 115、TensorFlow变量的使用
# To use the value of a tf.Variable in a Tesnorflow graph , simply treat it like a normal tf.Tensor ...
- 用 Flask 来写个轻博客 (22) — 实现博客文章的添加和编辑页面
Blog 项目源码:https://github.com/JmilkFan/JmilkFan-s-Blog 目录 目录 前文列表 新建表单 新建视图函数 新建模板 在博客文章页面添加 New 和 Ed ...
- Tomcat安装后修改路径方法
tomcat+mysql+jdk 本地已经安装tomcat.mysql.jdk服务,需要更改安装目录由D盘改为C盘,方法如下 一.停止tomcat.mysql服务 二.安装文件由D盘拷贝到C盘,原D盘 ...
- 学会如何使用,pycharm,和gitlanb
好好看,好好学.这才是正确的. 1 在pycharm 里面选择checkout as 切换分支 2 选择自己提交的,然后选择审核人.是强哥
- vim可视模式
参考: http://xw2423.byr.edu.cn/blog/archives/232 http://www.pythonclub.org/linux/vim/visual-mode Vim的多 ...
- ccf 201809-3 元素选择器
一.思路: 1.将结构化文档的每一行处理成一个节点(可定义一个结构体,成员包含标签tag.属性id.层级level.祖先所在行数father). 2.然后整个结构化文档就成了一个树形结构,可从任一节点 ...
- 【python】 读写文件
#标准输出 sys.stdout.write() sys.stderr.write() #标准输入 while True : try: line = raw_input().rstrip(); exc ...
- Mysql 2019-07-01
- linux 服务器,登录出现login incorrect
1.排查是否是登录用户的密码错误 2.查看本机电脑键盘是否有误 3.排查是否是服务器目录全是777权限 注意事项: 原因是您把系统中全部文件的权限改为的777 ,权限混乱,虽然现在可以访问,但是其他文 ...