目录

第1关 统计字符数量

第2关 统计单词数量

第3关 计算偏移量

第4关 凯撒密码加密


第1关 统计字符数量

import string
# 读文件,返回字符串
def read_file(file):  ##################Begin##################with open(file, 'r', encoding='utf-8') as f:  return f.read()###################End#################### 返回大写字母、小写字母、数字、空格和其他字符的数量
def classify_char(txt):  ##################Begin##################upper, lower, digit, space, other = 0, 0, 0, 0, 0  for ch in txt:  if ch.islower():  lower = lower + 1  elif ch.isupper():  upper = upper + 1  elif ch.isnumeric():  digit = digit + 1  elif ch.isspace():  space = space + 1  else:  other = other + 1  return upper, lower, digit, space, other ###################End###################if __name__ == '__main__':  filename = 'mayun.txt'  # 读取的文件名  text = read_file(filename)  # text为字符串  print(*classify_char(text))  

第2关 统计单词数量

import string
# 读文件,返回字符串
def read_file(file):    with open(file, 'r', encoding='utf-8') as f:      return f.read()  # 用空格替换所有符号,切分为列表
def word_list(txt):for ch in '!"#$%&()*+,-.:;<=>?@[\\]^_’‘{|}~/':#########################Begin############################### txt = txt.replace(ch, " ")  # 所有符号替换为空格  return txt.split()  # 切分为列表,返回列表#########################End############################### # 返回单词数量
def number_of_words(ls):#########################Begin############################### return len(ls)#########################End############################### if __name__ == '__main__':filename = 'mayun.txt'  # 读取的文件名text = read_file(filename)  # text为字符串words_list = word_list(text)  # 单词的列表words_counts = number_of_words(words_list)print(f'共有{words_counts}单词')

第3关 计算偏移量

import string# 用字符串中字符ASCII值的和对26取模为偏移量
def offset_cal(day):#########################Begin############################### sum_of_ch = 0  for c in day:  sum_of_ch = sum_of_ch + ord(c)  offset = sum_of_ch % 26  return offset#########################End############################### if __name__ == '__main__':secret_word = input()offset_number = offset_cal(secret_word)print(offset_number)

第4关 凯撒密码加密

import string
# 读文件,返回字符串
def read_file(file):  with open(file, 'r', encoding='utf-8') as f:  return f.read()# 用字符串中字符ASCII值的和对26取模为偏移量
def offset_cal(day):  sum_of_ch = 0  for c in day:  sum_of_ch = sum_of_ch + ord(c)  offset = sum_of_ch % 26  return offsetdef kaisa(txt, number):  ###########################Begin###########################lower = string.ascii_lowercase  # 小写字母  upper = string.ascii_uppercase  # 大写字母  before = string.ascii_letters  after = lower[number:] + lower[:number] + upper[number:] + upper[:number]  table = ''.maketrans(before, after)  # 创建映射表  return txt.translate(table)############################End############################if __name__ == '__main__':  filename = 'mayun.txt'  # 读取的文件名  text = read_file(filename)  # text为字符串  secret_word = input()  offset_number = offset_cal(secret_word)  print(kaisa(text, offset_number))  

5.4 文本分析与加密相关推荐

  1. 学校作业5_1字符串_文本分析与加密(头哥作业[Python])

    本系列文章为同学困扰的python做出作业答案汇总,答案皆为本学生自己边学边做汇总上传的,编排不易,希望大家喜欢. 本作业所有内容均在github上有留存,每次作业github上会最先发布,CSDN上 ...

  2. 5.4 文本分析与加密(project)

    第1关:统计字符数量 任务描述 本关任务:读取附件中的文件,统计文件中大写字母.小写字母.数字.空白字符和其他字符的数量. 输出格式‪‬‪‬‪‬‪‬‪‬‮‬‪‬‭‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬ ...

  3. 文本分析 | 年报转换TXT关键词频统计

    前言 上篇文章<[爬虫]30行代码轻松爬取全部A股公司年报>介绍了如何爬取2003-2019年A股全部年报,但是爬取的年报都是PDF格式,不能直接用于文本分析,需要先转换为TXT格式.因此 ...

  4. 文本的DES加密 MD5散列值 DSA的数字签名

    作者:未知 文本的DES加密 为了对称加密的安全,将密码进行封装,先新建一个用于保存密码的类库cl: using System; using System.Text ; namespace cl { ...

  5. linux文本分析利器awk

    转 快速理解linux文本分析利器awk 原文链接 杜亦舒 性能与架构 awk是什么 如果工作中需要操作linux比较多,那么awk是非常值得学习的 awk是一个极其强大的文本分析工具,把文件逐行的读 ...

  6. utf8 txt文本转ansi vbs_数据分析之路-文本分析

    含义:文本分析是指对文本的表示及其特征项的选取:文本分析是文本挖掘.信息检索的一个基本问题,它把从文本中抽取出的特征词进行量化来表示文本信息. 分析过程:1.搭建语料库(即要分析文章的集合).知识点: ...

  7. 特朗普推文的文本分析

    导言 通常不会发布关于政治的信息(我对投票不是特别精明,这是数据科学对政治产生最大影响的地方),但本周末我看到了一个关于唐纳德特朗普的推特账户的假设,这个假设只是被要求调查有数据: 当特朗普祝奥运队好 ...

  8. 不需编程/无需写代码的中文英文文本分析教程,免费傻瓜式,多图预警

    这里讲解如何使用KH Coder.整个过程不需要编程知识. 有两种导入数据的方式,第一种是将所有的文字放到一个txt文件中:第二种是将文字放到多个txt文件中,这些文件放到一个文件夹下.因为第二种更加 ...

  9. 免费的文本分析 文本挖掘软件工具

    这里针对非编程人员,介绍几个免费文本分析和文本挖掘软件,可以直接导入中文文本,得出一些统计和可视化信息.另外如果是编程人员,推荐使用一下文本挖掘的工具包.下面是两个可选的工具. KH Coder 链接 ...

最新文章

  1. R语言-文本挖掘 主题模型 文本分类
  2. python装饰器类-python装饰器2:类装饰器
  3. linux如何取文件列名,Linux_根据表名和索引获取需要的列名的存储过程,复制代码 代码如下: create proc p - phpStudy...
  4. Vim快捷输出查找寄存器的内容(去除\,\和\V)
  5. netty系列之:使用POJO替代buf
  6. 一个给计算机写程序的人是谁,如果计算机是中国人发明的 写代码会是一种什么情况 程序员看了都头疼...
  7. sci translate好用吗_228个学科分类对应12000+本SCI和SSCI期刊,总有你要的那款!
  8. Java 算法 数字分类
  9. 图论:柯尼斯堡桥问题、艾科西亚游戏
  10. mui PopPicker面板关闭后的回调函数
  11. SQL 之group by查询语句
  12. 小米8 青春版root时无法检测到手机
  13. 超级好用的配色工具Palettte
  14. rust军用船指令_给Rust实现一个简单的stackful generator(中)上下文切换
  15. 按了锁定计算机,鼠标锁定了按什么键解锁
  16. 基于极化码(Polar Code)的加密
  17. pb 调用虹软_Python进阶量化交易专栏场外篇12-股票分笔数据跨周期处理
  18. iMX8模块Ubuntu移植
  19. Python自动生成ffmpeg转码HEVC (X265,H265) 命令
  20. org.eclipse.core.runtime.IPath报错

热门文章

  1. 2023大连海洋大学计算机考研信息汇总
  2. Freemarker语法2
  3. linux内核原子操作使用简介
  4. 0x3f3f3f3f是什么意思
  5. 基于微信小程序的消费金融系统
  6. Python导入arcpy包出现“ImportError: No module named arcpy”
  7. emq无法启用mysql_EMQ开启mysql认证
  8. Netbeans安装教程
  9. oracle备份提示12560,做standby 数据库时,出现ORA-12560 错误:
  10. JAVAWEB之JSTL标签