当前位置: 首页 > news >正文

商务分析方法与工具(六):Python的趣味快捷-字符串巧妙破解密码本、身份证号码、词云图问题

Tips:"分享是快乐的源泉💧,在我的博客里,不仅有知识的海洋🌊,还有满满的正能量加持💪,快来和我一起分享这份快乐吧😊!

喜欢我的博客的话,记得点个红心❤️和小关小注哦!您的支持是我创作的动力!

目录

  • 商务分析方法与工具(六):Python的趣味快捷-字符串巧妙破解密码本问题
    • 实验6 字符串
    • 一、实验目的
      • 1. 掌握Python中字符串的基本使用方法,包括字符串格式化和常见的方法
      • 2. 掌握正则表达式的语法和用法
    • 二 、实验准备
      • 1.复习教材第7章的内容
      • 2. 练习教材第7章的代码
    • 三、实验内容
      • 1.输入一个包含标点符号的英文句子,统计输出句子中的每个单词个数
        • (1)代码展示:
        • (2)结果显示
      • 2. 18位身份证中有出生年月信息,其中第17位代表性别,奇数为男,偶数为女。用户任意输入一个身份证号,可以输出其出生年月和性别。
        • (1)代码显示:
        • (2)结果显示:
      • 3. 凯撒密码:编写函数,实现英文字符串加密和解密,k自定义
        • (1)加密代码展示:
        • (2)加密结果显示:
        • (3)解密代码展示:
        • (4)解码结果展示:
      • 4。编写程序,生成10个8位密码(26个字母大小写、9个数字、常用符号组成),并写入到 文本文件中(记事本)
        • (1)代码展示:
        • (2)结果显示:
        • (3)文件显示:
      • 5. 用户输入一个字符串作为密码,判断密码强度:密码长度小于8位为弱密码,密码长度大于等于8且包含至少2种字符为中等强度,密码包含3种字符为强,包含全部4种字符为极强。
        • (1)代码展示:
        • (2)结果显示:
      • 6.自选一篇中文文章,画词云图
        • (1)代码展示:
        • (2)结果显示:
    • 四、实验中的问题和体会
      • 问题1:
      • 体会1:
      • 问题2:
      • 体会2:
      • 问题3:词云图注意事项与最佳流程?
      • 体会3:

商务分析方法与工具(六):Python的趣味快捷-字符串巧妙破解密码本问题

实验6 字符串

一、实验目的

1. 掌握Python中字符串的基本使用方法,包括字符串格式化和常见的方法

2. 掌握正则表达式的语法和用法

二 、实验准备

1.复习教材第7章的内容

2. 练习教材第7章的代码

三、实验内容

1.输入一个包含标点符号的英文句子,统计输出句子中的每个单词个数

第1题解答如下:

(1)代码展示:

在这里插入图片描述

(2)结果显示

在这里插入图片描述

2. 18位身份证中有出生年月信息,其中第17位代表性别,奇数为男,偶数为女。用户任意输入一个身份证号,可以输出其出生年月和性别。

第2题解答如下:

(1)代码显示:

在这里插入图片描述

(2)结果显示:

在这里插入图片描述

3. 凯撒密码:编写函数,实现英文字符串加密和解密,k自定义

在密码学中,恺撒密码是一种最简单且最广为人知的加密技术。它是一种替换加密的技术,# 明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。 例,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推。
这个加密方法是以恺撒的名字命名的,当年恺撒曾用此方法与其将军们进行联系。
第3题解答如下:

(1)加密代码展示:

在这里插入图片描述

(2)加密结果显示:

在这里插入图片描述

(3)解密代码展示:

在这里插入图片描述

(4)解码结果展示:

在这里插入图片描述

4。编写程序,生成10个8位密码(26个字母大小写、9个数字、常用符号组成),并写入到 文本文件中(记事本)

第4题解答如下:

(1)代码展示:

在这里插入图片描述

(2)结果显示:

在这里插入图片描述

(3)文件显示:

在这里插入图片描述

5. 用户输入一个字符串作为密码,判断密码强度:密码长度小于8位为弱密码,密码长度大于等于8且包含至少2种字符为中等强度,密码包含3种字符为强,包含全部4种字符为极强。

第5题解答如下:

(1)代码展示:

在这里插入图片描述

(2)结果显示:

在这里插入图片描述

6.自选一篇中文文章,画词云图

第6题解答如下:

(1)代码展示:

在这里插入图片描述

(2)结果显示:

在这里插入图片描述

四、实验中的问题和体会

问题1:

英文句子包含:英文,英文标点,空格,而空格是最好的分割符,如何更好切割?

体会1:

(1)导入string库,能够调用string.punctuation赋值“英文标点符号”形成字符串
(2)拓展:导入from zhon.hanzi.punctuation 可以赋值“中文标点符号”形成字符串
(3)输出格式:“单词出现多少次”,因而记得给“单词”强制转化为集合达到去重。

问题2:

密码类型如何界定?但多种类型复杂密码如何构建?

体会2:

(1)模型:多类字符串相加,得密码库字符串,再由密码库随机抽取,’’.join()成密码
在这里插入图片描述

(2)额外下载的第三方库,导入库很方便:
在这里插入图片描述

问题3:词云图注意事项与最佳流程?

体会3:

(1)词语图需要用到两个库,jieba库和wordcloud库
(2)在jieba库中,注重词汇的清洗与筛选流程,比如统计词汇数目需要去除各类标点符号和空格,才能达到准确计算词语频数
(3)将标点符号为空白时,两者缺一不可,不然会有多余空白参与, in 要分开两句使用
在这里插入图片描述

(4)精确模式与全模式,区别在于词汇拓展程度:
在这里插入图片描述

(5)font-path = ‘msyh.ttc’最好写这个,其他的可能会报错
在这里插入图片描述

相关文章:

商务分析方法与工具(六):Python的趣味快捷-字符串巧妙破解密码本、身份证号码、词云图问题

Tips:"分享是快乐的源泉💧,在我的博客里,不仅有知识的海洋🌊,还有满满的正能量加持💪,快来和我一起分享这份快乐吧😊! 喜欢我的博客的话,记得…...

ftp方式和http方式搭建云仓库

1.搭建阿里云仓库 国外云仓库比较慢,可以使用阿里云仓库代替 1.服务端和客户端切换到 yum.repo.d 目录 将自带的仓库移走 [rootlocalhost ~] cd /etc/yum.repos.d/ [rootlocalhost yum.repos.d] mkdir bak [rootlocalhost yum.repos.d] mv *.repo bak/ [rootloca…...

vue2 + antvx6 实现流程图功能

导入关键包 npm install antv/x6 --save npm install antv/x6-vue-shape 保存插件 (可选) npm install --save antv/x6-plugin-clipboard antv/x6-plugin-history antv/x6-plugin-keyboard antv/x6-plugin-selection antv/x6-plugin-snapline antv/x6-plugin-stencil antv/…...

IDEA 中的奇技淫巧

IDEA 中的奇技淫巧 书签 在使用ctrlalt方向键跳转时,或者追踪代码时,经常遇到的情况是层级太多,找不到代码的初始位置,入口。可以通过书签的形式去打上一个标记,后续可以直接跳转到书签位置。 标记书签:c…...

LSTM-KDE的长短期记忆神经网络结合核密度估计多变量回归区间预测(Matlab)

LSTM-KDE的长短期记忆神经网络结合核密度估计多变量回归区间预测(Matlab) 目录 LSTM-KDE的长短期记忆神经网络结合核密度估计多变量回归区间预测(Matlab)效果一览基本介绍程序设计参考资料 效果一览 基本介绍 1.LSTM-KDE的长短期…...

CMakeLists.txt语法规则:部分常用命令说明三

一. 简介 前面几篇文章学习了CMakeLists.txt语法中 add_executable命令,add_library命令,aux_source_directory命令,include_directories命令,add_subdirectory 命令的简单使用。文章如下: CMakeLists.txt语法规则&…...

android init进程启动流程

一,Android系统完整的启动流程 二,android 系统架构图 三,init进程的启动流程 四,init进程启动服务的顺序 五,android系统启动架构图 六,Android系统运行时架构图 bool Service::Start() {// Starting a service removes it from the disabled or reset state and// imme…...

利用爬虫解决数据采集难题

文章目录 安装为什么选择 BeautifulSoup 和 requests?安装 BeautifulSoup 和 requests解决安装问题 示例总结 在现代信息时代,数据是企业决策和发展的关键。然而,许多有用的数据分散在网络上,且以各种格式和结构存在,因…...

智慧粮库/粮仓视频监管系统:AI视频智能监测保障储粮安全

智慧粮库视频监管系统是一种基于物联网、AI技术和视频监控技术的先进管理系统,主要用于对粮食储存环境进行实时监测、数据分析和预警。TSINGSEE青犀智慧粮库/粮仓视频智能管理系统方案通过部署多区域温、湿度、空气成分等多类传感器以及视频监控等设施,对…...

经验浅谈!伦敦银如何交易?

近期,伦敦银价格出现很强的上涨,这促使一些新手投资者进入了市场,但由于缺乏经验,他们不知道该怎么在市场中交易,下面我们就从宏观上介绍一些方法,来讨论一下伦敦银如何交易。 首先我们要知道,要…...

信息系统项目管理师(高项)_习题杂记

1.GB/T16260-2006《软件工程产品质量》系列标准: 1)GB/T16260.1-2006《软件工程产品质量第1部分:质量模型》,提出了软件生存周期中的质量模型; 2)GB/T16260.2-2006《软件工程产品质量第2部分:…...

CMakeLists.txt 简单的语法介绍

一. 简介 前面通过几个简单地示例向大家演示了 cmake 的使用方法,由此可知,cmake 的使用方法其实还是非常简单的,重点在于编写 CMakeLists.txt,CMakeLists.txt 的语法规则也简单,并没有 Makefile 的语法规则那么复杂难…...

AI时代:人工智能大模型引领科技创造新时代

目录 前言一. AI在国家战略中有着举足轻重的地位1.1 战略1.2 能源1.3 教育 二. AI在日常生活中扮演着重要角色2.1 医疗保健2.2 智能客服2.3 自动驾驶2.4 娱乐和媒体2.5 智能家居 三. AI的未来发展趋势 总结 前言 随着AI技术的进步,新一代的AI技术已经开始尝试摆脱依…...

为什么 IP 地址通常以 192.168 开头?(精简版)

网络通讯的本质就是收发数据包。如果说收发数据包就跟收发快递一样。IP地址就类似于快递上填的收件地址和发件地址一样,路由器就充当快递员的角色,在这个纷繁复杂的网络世界里找到该由谁来接收这个数据包,所以说:IP地址就像快递里…...

【HEC】HECRAS中的降雨边界

目录 说明HEC-RAS网格降雨模型与HEC-HMS的比较HECRAS 降雨边界2D Area降雨边界添加降水边界条件调整2D Flow Area特性添加入渗网格数据创建土地覆盖层创建土壤层创建入渗层指定几何图形关联具有空间变化的网格降水数据Point点数据Gridded网格化数据Constant恒定值蒸散和风数据...

搜索算法系列之三(插值查找)

前言 插值查找仅适用于有序数据、有序数组,和二分查找类似,更讲究数据有序均匀分布。 算法原理 插值查找(interpolation search)是一种查找算法,它与二分查找类似,但在寻找元素时更加智能化。这种算法假设数据集是等距的或者有…...

前端奇怪面试题总结

面试题总结 不修改下面的代码进行正常解构 这道题考的是迭代器和生成器的概念 let [a,b] {a:1,b:2}答案 对象缺少迭代器,需要手动加上 Object.prototype[Symbol.iterator] function* (){// return Object.values(this)[Symbol.iterator]()return yeild* Object.v…...

NPM--最新淘宝镜像源地址

最新淘宝镜像源地址: 原来的 https://registry.npm.taobao.org 已替换为 https://registry.npmmirror.com 查看镜像源 npm config get registry 更换为淘宝最新镜像源 npm config set registry https://registry.npmmirror.com...

vue3中实现地区下拉选择组件封装

1组件文件 新建一个文件夹内&#xff0c;包含inde.vue,index.ts,pac.json这三个文件 index.vue文件 <template><el-cascaderv-model"data":options"pcaData":style"{ width: props.width }":placeholder"props.placeholder&quo…...

责任链模式案例

需求背景&#xff1a; 请你设计一个员工休假审批流程&#xff0c;当员工的休假天数<1时&#xff0c;由直接领导审批&#xff0c;休假天数<2时&#xff0c;分别由直接领导、一级部门领导审批&#xff0c;休假天数>3时&#xff0c;分别由直接领导、一级部门领导、分管领…...

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎&#xff08;Physics Engine&#xff09; 物理引擎 是一种通过计算机模拟物理规律&#xff08;如力学、碰撞、重力、流体动力学等&#xff09;的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互&#xff0c;广泛应用于 游戏开发、动画制作、虚…...

React Native 开发环境搭建(全平台详解)

React Native 开发环境搭建&#xff08;全平台详解&#xff09; 在开始使用 React Native 开发移动应用之前&#xff0c;正确设置开发环境是至关重要的一步。本文将为你提供一份全面的指南&#xff0c;涵盖 macOS 和 Windows 平台的配置步骤&#xff0c;如何在 Android 和 iOS…...

2025 后端自学UNIAPP【项目实战:旅游项目】6、我的收藏页面

代码框架视图 1、先添加一个获取收藏景点的列表请求 【在文件my_api.js文件中添加】 // 引入公共的请求封装 import http from ./my_http.js// 登录接口&#xff08;适配服务端返回 Token&#xff09; export const login async (code, avatar) > {const res await http…...

Robots.txt 文件

什么是robots.txt&#xff1f; robots.txt 是一个位于网站根目录下的文本文件&#xff08;如&#xff1a;https://example.com/robots.txt&#xff09;&#xff0c;它用于指导网络爬虫&#xff08;如搜索引擎的蜘蛛程序&#xff09;如何抓取该网站的内容。这个文件遵循 Robots…...

DBAPI如何优雅的获取单条数据

API如何优雅的获取单条数据 案例一 对于查询类API&#xff0c;查询的是单条数据&#xff0c;比如根据主键ID查询用户信息&#xff0c;sql如下&#xff1a; select id, name, age from user where id #{id}API默认返回的数据格式是多条的&#xff0c;如下&#xff1a; {&qu…...

ardupilot 开发环境eclipse 中import 缺少C++

目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...

SpringCloudGateway 自定义局部过滤器

场景&#xff1a; 将所有请求转化为同一路径请求&#xff08;方便穿网配置&#xff09;在请求头内标识原来路径&#xff0c;然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...

初探Service服务发现机制

1.Service简介 Service是将运行在一组Pod上的应用程序发布为网络服务的抽象方法。 主要功能&#xff1a;服务发现和负载均衡。 Service类型的包括ClusterIP类型、NodePort类型、LoadBalancer类型、ExternalName类型 2.Endpoints简介 Endpoints是一种Kubernetes资源&#xf…...

省略号和可变参数模板

本文主要介绍如何展开可变参数的参数包 1.C语言的va_list展开可变参数 #include <iostream> #include <cstdarg>void printNumbers(int count, ...) {// 声明va_list类型的变量va_list args;// 使用va_start将可变参数写入变量argsva_start(args, count);for (in…...