第四次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 ...
随机推荐
- [Typescript] Build Method decorators in Typescript
To using decorate, we can modifiy tsconfig.json: { "compilerOptions": { ... "experime ...
- 设计模式之Mediator模式(笔记)
中介者模式:用一个中介对象来封装一系列的对象交互. 中介者使各对象不须要显式的相互引用,从而使其耦合松散.并且能够独立的改变它们之间的交互. 使用场合:中介者模式一般应用于一组对象以定义良好可是复杂的 ...
- 上传canvas图片到服务器
canvas绘图后用 canvasDom.toDataURL()可以得到png格式图片的base64 dataURI 然后用ajax post给后台 ,后端程序把开头的data:image/png; ...
- QT跟VC++结合来进行插件的验证机制(遍历vtable,保证虚函数的个数一致,也可使用Q_INVOKABLE宏定义)
由于最近公司要开发一个以C++插件机制为主的,主要有一个问题就是C++的二进制兼容性的问题.一旦类使用虚函数,只要随便改动下增删查改下头文件的虚函数,就会导致程序在跑的时候进行乱跳,因为这个时候exe ...
- Android 输入框限制字符输入数
有时候对Android的输入框有字符输入数量的限制,而且显示字符输入的数量.通过下面方式能够实现: 1.自己定义LimitNumEditText继承EditText import android.co ...
- angularjs 路由 ngRoute tab切换
<!DOCTYPE HTML> <html ng-app="myApp"> <head> <meta http-equiv="C ...
- hbase伪分布安装配置
hbase1.2.4 伪分布式安装 注意:在安装hbase或者hadoop的时候,要注意hadoop和hbase的对应关系.如果版本不对应可能造成系统的不稳定和一些其他的问题.在hbase的lib ...
- appium使用教程(一 环境搭建)-------------2.安装部署
1) 安装appium 2) SDK(不建议使用模拟器,占用内存很大,会造成机器卡顿.另外模拟器还存在兼容性问题:pc为x86架构,绝大多数的手机都是ARM架构,app的兼 ...
- NetHogs---按进程或程序实时统计网络带宽使用率。
NetHogs是一个开源的命令行工具(类似于Linux的top命令),用来按进程或程序实时统计网络带宽使用率. 来自NetHogs项目网站: NetHogs是一个小型的net top工具,不像大多数工 ...
- FZU 1202 信与信封问题 二分图匹配
找匹配中的关键边. 做法: 拆掉一条匹配边,然后对边两边的点做一次增广,如果可以增广,那么此边不是关键边,否则是关键边. 详情可以参见:http://www.docin.com/p-109868135 ...