第四次python作业——叶耀宗
设计题2: 1.参考“三国演义”词频统计程序,实现对红楼梦出场人物的频次统计。
2.(可选)
将红楼梦出场人物的频次统计结果用词云显示。
import jieba
excludes = {"什么", "一个", "我们", "你们", "如今", "说道", "知道", "出来", "那里", "起来", "姑娘", "这里",
"他们", "众人", "自己", "一面", "太太", "老太太", "只见", "怎么", "两个", "过来", "心里", "二爷",
"没有", "不是", "不知", "这个", "这样", "听见", "进来", "咱们", "告诉", "就是", "如此", "今日",
"东西", "奶奶", "回来", "只是", "老爷", "大家", "不好", "姐姐", "一时", "不能", "鸳鸯", "银子", "几个",
"只得", "丫头", "这些", "不敢", "出去", "所以", "王夫人", "平儿", "袭人", "薛姨妈", "不过", "的话",
"答应", "二人", "还有", "贾政", "只管", "这么", "说话", "一回", "那边", "湘云", "这话", "外头", "打发", "自然",
"今儿", "罢了", "屋里", "那些", "听说"}
txt = open("红楼梦.txt", "r", encoding='utf8').read()
words = jieba.lcut(txt)
counts = {}
for word in words:
if len(word) == 1:
continue
elif word == "贾宝玉" or word == "宝玉道":
rword = "宝玉"
elif word == "林黛玉" or word == "黛玉道":
rword = "黛玉"
elif word == "薛宝钗" or word == "宝钗":
rword = "宝钗"
elif word == "贾元春" or word == "元春":
rword = "元春"
elif word == "贾探春" or word == "探春":
rword = "探春"
elif word == "贾惜春" or word == "惜春":
rword = "惜春"
elif word == "王熙凤" or word == "熙凤道" or word == "凤姐道" or word == "凤姐儿" or word == "凤姐":
rword = "熙凤"
elif word == "秦可卿" or word == "可卿":
rword = "可卿"
elif word == "刘姥姥道" or word == "刘姥姥":
rword = "刘姥姥"
elif word == "晴雯" or word == "晴雯道":
rword = "晴雯"
else:
rword = word
counts[rword] = counts.get(rword, 0) + 1
for word in excludes:
del (counts[word])
items = list(counts.items())
items.sort(key=lambda x: x[1], reverse=True)
for i in range(10):
word, count = items[i]
print("{0:<10}{1:>7}".format(word, count))

设计题1:
设计一个本月份日历,输出格式如下:
要求:
1.初始化start_day,end_day两个日期
from datetime import datetime
start_day=datetime(2019,4,1)
end_day=datetime(2019,4,30)
其它时间数据生成要用datetime或date模块的方法编程实现
2.不能使用calendar模块生成 from datetime import *
start_day = datetime(2019, 4, 1)
end_day = datetime(2019, 4, 30)
d = end_day - start_day
month = start_day.month
fist = start_day.weekday()
day = d.days + 1 count = 0
n = 1
print("\t\t2019年4月")
print("一\t二\t三\t四\t五\t六\t日")
while n <= fist:
n += 1
print("\t", end="")
count += 1
if (count % 7 == 0):
print("\n") m = 1
while m <= day:
print(m, "\t", end="")
m += 1
count += 1
if (count % 7 == 0):
print("\n")

第四次python作业——叶耀宗的更多相关文章
- python第三次作业——叶耀宗
作业1 import random#引入随机数模块xing=["小白","小黄","小王","小陈","小绿& ...
- [Python学习笔记][第四章Python字符串]
2016/1/28学习内容 第四章 Python字符串与正则表达式之字符串 编码规则 UTF-8 以1个字节表示英语字符(兼容ASCII),以3个字节表示中文及其他语言,UTF-8对全世界所有国家需要 ...
- [Python笔记][第四章Python正则表达式]
2016/1/28学习内容 第四章 Python字符串与正则表达式之正则表达式 正则表达式是字符串处理的有力工具和技术,正则表达式使用预定义的特定模式去匹配一类具有共同特征的字符串,主要用于字符串处理 ...
- python学习第四讲,python基础语法之判断语句,循环语句
目录 python学习第四讲,python基础语法之判断语句,选择语句,循环语句 一丶判断语句 if 1.if 语法 2. if else 语法 3. if 进阶 if elif else 二丶运算符 ...
- 0003.5-20180422-自动化第四章-python基础学习笔记--脚本
0003.5-20180422-自动化第四章-python基础学习笔记--脚本 1-shopping """ v = [ {"name": " ...
- 【转】python 历险记(四)— python 中常用的 json 操作
[转]python 历险记(四)— python 中常用的 json 操作 目录 引言 基础知识 什么是 JSON? JSON 的语法 JSON 对象有哪些特点? JSON 数组有哪些特点? 什么是编 ...
- Python作业第一课
零基础开始学习,最近周边的同学们都在学习,我也来试试,嘿嘿,都写下来,下次不记得了还能来看看~~ Python作业第一课1)登陆,三次输入锁定,下次不允许登陆2)设计一个三级菜单,菜单内容可自行定义, ...
- Python作业-选课系统
目录 Python作业-选课系统 days6作业-选课系统: 1. 程序说明 2. 思路和程序限制 3. 选课系统程序目录结构 4. 测试帐户说明 5. 程序测试过程 title: Python作业- ...
- python作业ATM(第五周)
作业需求: 额度 15000或自定义. 实现购物商城,买东西加入 购物车,调用信用卡接口结账. 可以提现,手续费5%. 支持多账户登录. 支持账户间转账. 记录每月日常消费流水. 提供还款接口. AT ...
随机推荐
- LightOJ - 1132 Summing up Powers 矩阵高速幂
题目大意:求(1^K + 2^K + 3K + - + N^K) % 2^32 解题思路: 借用别人的图 能够先打表,求出Cnm,用杨辉三角能够高速得到 #include<cstdio> ...
- 2014 百度之星 1003 题解 Xor Sum
Xor Sum Problem Description Zeus 和 Prometheus 做了一个游戏,Prometheus 给 Zeus 一个集合,集合中包括了N个正整数,随后 Prometheu ...
- pig 调试(explain&illerstrate)
grunt> cat t.txt kw1 2 kw3 1 kw2 4 kw1 5 kw2 2 cat test.pig A = LOAD '/user/input/t.txt' as (k:ch ...
- 1264: [AHOI2006]基因匹配Match(动态规划神题)
1264: [AHOI2006]基因匹配Match 题目:传送门 简要题意: 给出两个序列.每个序列都由n种不同的数字组成,保证每个序列种每种数字都会出现5次(位置不一定一样),也就是序列长度为5*n ...
- C# 使用指针将不同值类型赋值到字节数组中
C#指针操作字节数组 Demo(以添加short类型的值为例): //bytes:目标字节数组; offset:目标在字节数组的位置; value:添加的类型值public static unsafe ...
- gcd(最大公约数)lcm(最小公倍数)E - Wolf and Rabbit
1.gcd 递归实现 int gcd(int i,int j){ if(j==0) return i; else return gcd(j,i%j);} 2.lcm int gcd(int i,int ...
- P3157 [CQOI2011]动态逆序对 CDQ分治
一道CDQ分治模板题简单来说,这道题是三维数点对于离线的二维数点,我们再熟悉不过:利用坐标的单调递增性,先按更坐标排序,再按纵坐标排序更新和查询时都直接调用纵坐标.实际上,我们是通过排序将二维中的一维 ...
- Javascript中正则的 match、test、exec使用方法和区别
总结: match 是str调用 test和exec是正则表达式调用 test只返回true或false, exec和match的结果是相同的,返回结果比较复杂
- iOS下调用元素的focus方法,input元素不聚焦,键盘不弹起的问题
页面元素 <input type="text" ref="elInput"/> <div style="margin-top:20p ...
- [UVa11549]Calculator Conundrum
题目大意:有一个只能显示n位数字的计算器,当溢出时只显示最高的n位. 输入k,要你不断平方,问你计算器显示的最大数是多少. 解题思路:这题的示数肯定会循环,那么我们关键就是找什么时候循环了. 可以用F ...