学会python——密码校验(python实例三)

news2025/1/4 19:36:37

目录

1、认识Python

2、环境与工具

2.1 python环境

2.2 pycharm编译

3、纠正密码输入的格式问题

3.1 代码构思

3.2 代码示例

 3.3 运行结果

4、总结


1、认识Python

Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。

Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字或标点符号,它具有比其他语言更有特色的语法结构。

 

2、环境与工具

2.1 python环境

在Windows上使用命令行窗口查看所安装的python版本

python 

 

2.2 pycharm编译

在这里可以直接使用社区版的pycharm进行代码编译。

 

3、纠正密码输入的格式问题

3.1 代码构思

登录密码在设置的时候为了保证其复杂性,往往需要满足由大写字母、小写字母、符号、数字组成,并且不能少于8位。

在这则代码中使用大写、小写、符号、数字识别方法,作为检验的方式,来辨别设置的密码的格式是否由问题

3.2 代码示例

def check_len(pwd):
    #检查密码长度是否大于八位
    if len(pwd)>=8:
        return True
    else:
        return False
    #检查密码组成
def check(pwd):
    check=[0,0,0,0]
    for char in pwd:
        #如果是小写
        if char.islower():
            check[0]=1
        #如果是大写
        if char.isupper():
            check[1]=1
        #如果是数字
        if char.isdigit():
            check[2]=1
        #如果是其他字符
        if not(char.isalpha()|char.isdigit()|char.isspace()):
            check[3]=1
    #当列表中的四个元素之和小于4说明不符合
    if sum(check)<4:
        return False
    else:
        return True
    #检查是否有四位以上是重复的
def check_rep(pwd):
        n=len(pwd)
        for i in range (n-4):
            str1=pwd[i:i+4]
            str2=pwd[i+4::]
            if str1 in str2:
                return False
        return True
if __name__ == '__main__':
    msg='''
    请设置密码:
    密码必须由大写字母、小写字母、符号、数字组成,并且不能少于8位
    '''
    print(msg)
    while True:
        pwd=input('请输入密码')
    #退出程序
        if pwd=='q':
            print("退出")
            break
    #查询位数
        vcheck1=check_len(pwd)
        if not vcheck1:
            print("位数不对")
            continue
    #查询符号组成
        vcheck2=check(pwd)
        if not vcheck2:
            print("密码组成必须是大写字母+小写字母+数字+符号")
            continue
    #查询有无重复
        vcheck3=check_rep(pwd)
        if not vcheck3:
            print("密码有重复字符串")
            continue
        print("密码格式正确")
        break

 3.3 运行结果

在输入的时候要严格按照密码中含有大写字母、小写字母、符号、数字,并且不能少于8位的条件进行输入,否则就会报错。

4、总结

通过这一则代码,展示了在注册账号时候为什么要求输入多种格式的密码,展示了密码检验的底层逻辑。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1820730.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

鸿蒙轻内核A核源码分析系列七 进程管理 (2)

本文先熟悉下进程管理的文件kernel\base\core\los_process.c中的内部接口&#xff0c;读读代码&#xff0c;做些记录。 1、LiteOS-A内核进程全局变量 ⑴是进程池&#xff0c;存放各个进程控制块LosProcessCB的信息。⑵处开始的g_freeProcess是空闲进程链表&#xff0c;挂载各…

美业门店管理系统Java源码分享-【库存管理】的功能和作用

美业收银系统在美容行业中的作用和重要性体现在提高管理效率、提升客户满意度、降低成本、促进业务增长等方面。它为连锁美业提供了一个全面的管理工具&#xff0c;能够更好地应对市场挑战&#xff0c;提升竞争力。 美业系统中的【库存管理】在整个美容行业中起着非常重要的作…

【SpringBoot系列】覆盖重写第三方Jar包中类

要覆盖或重写一个第三方JAR包中的类&#xff0c;你可以使用以下几种方法&#xff1a; 方法一&#xff1a;使用类路径优先级 Java的类加载机制会优先加载类路径&#xff08;classpath&#xff09;中最先找到的类。因此&#xff0c;如果你在自己的项目中定义了一个与第三方JAR包…

天地图开发实战:Vue结合OpenLayers实现动态点位地图

在Web开发中&#xff0c;地图功能是一个常见的需求&#xff0c;尤其是在需要展示地理位置信息的应用程序中。OpenLayers&#xff08;简称OL&#xff09;是一个强大的JavaScript库&#xff0c;用于创建交互式地图。本文将介绍如何利用OpenLayers和天地图API&#xff0c;实现一个…

南卡、漫步者和Oladance开放式耳机哪个强!无广甄选测评!

在当前市场上&#xff0c;因为许多质量不行&#xff0c;音质平平的开放式耳机让消费者的选择陷入了困难。这些品质低下的产品既无法提供优秀的音频享受&#xff0c;长期佩戴还可能对使用者的听力健康造成健康问题。 作为一名经验丰富的音频设备评测专家&#xff0c;我建议在选…

音频提取格式转换,一招教你轻松搞定!

在数字化音频的时代&#xff0c;我们经常面临着需要提取音频片段或将音频文件转换为不同格式的任务。无论是创作音乐、编辑声音效果&#xff0c;还是适应不同设备或平台的需求&#xff0c;音频提取格式转换都是音频处理中不可或缺的一环。在本文中&#xff0c;我们将分享一招教…

【HarmonyOS】遇见的问题汇总

一、当前编辑的页面&#xff0c;预览打不开 1、问题说明 当前编辑的页面&#xff0c;预览打不开&#xff0c;日志提示如下&#xff1a; Route information is not configured for the current page. To avoid possible redirection issues, configure route information for…

VScode ssh远程连接代码开发XHR failed

一、问题描述 在vscode下载插件Remote-SSH远程连接进行代码开发时&#xff0c;提示 XHR failed 无法建立连接。 二、解决方案 1. 离线下载vscode-server 第一步&#xff1a;vscode菜单栏----帮助----关于----提交后面的一串数字字母即为vscode的 commit_id 第二步&#xff…

群辉其它方案远程访问(ZeroTier篇)

目录 1、注册ZeroTier 2、创建网络 3、下载安装客户端 (1)Windows (2)移动端 i.Android i.iOS (a)注册新ID (b)登陆苹果应用商店 iii.群辉NAS 4、客户端加入网络 (a)Windows (b)Android (c)群辉NAS 5、使用 群辉的远程访问,最标准的做法就是使用…

31、shell循环

一、循环 循环&#xff1a;循环是一种重复执行一段代码的结构。只要满足循环的条件&#xff0c;会一直执行这个代码。 循环条件&#xff1a;在一定范围之内&#xff0c;按照指定的次数来执行循环。 循环体&#xff1a;在指定的次数内&#xff0c;执行的命令序列。只要条件满…

建筑垃圾/城市固废倾倒转移乱象:青犀AI智能视频监控方案助力城市环保监管

近日有新闻记者报道&#xff0c;中央生态环境保护督察组在上海、浙江、江西、湖北、湖南、重庆、云南7省市督察发现&#xff0c;一些地方建筑垃圾处置工作存在明显短板&#xff0c;乱堆乱倒问题时有发生&#xff0c;比如&#xff0c;江西湘东区在杨家田地块违规设置弃土场&…

看完“土猪拱白菜“的张锡峰,我明白计算机有多难了

计算机有多难&#xff1f; 今天无意中&#xff0c;看到一篇关于「"土猪拱白菜"学霸后悔报考浙大计算机」的文章。 或许会有不少和我刚开始一样懵圈的同学&#xff1a;张锡峰是谁&#xff1f;"土猪拱白菜"又是什么梗&#xff1f; 带着疑惑&#xff0c;我打开…

项目实战--文档搜索引擎

在我们的学习过程中&#xff0c;会阅读很多的文档&#xff0c;例如jdk的API文档&#xff0c;但是在这样的大型文档中&#xff0c;如果没有搜索功能&#xff0c;我们是很难找到我们想查阅的内容的&#xff0c;于是我们可以实现一个搜索引擎来帮助我们阅读文档。 1. 实现思路 1…

《C++程序设计》银行管理系统

莫思身外无穷事 且尽生前有限杯 我们先来看一下项目需求&#xff1a; 【场景】 在日常生活中&#xff0c;我们普遍接触到窗口服务系统&#xff0c;如到银行柜台办理业务、景区现场购买门票等。当需要办理业务的顾客数超过窗口数量时&#xff0c;我们需遵循排队等待原则。 【需…

不想搭集群,直接用spark

为了完成布置的作业&#xff0c;需要用到spark的本地模式&#xff0c;根本用不到集群&#xff0c;就不想搭建虚拟机&#xff0c;hadoop集群啥的&#xff0c;很繁琐&#xff0c;最后写作业还用不到集群&#xff08;感觉搭建集群对于我完成作业来说没有什么意义&#xff09;&…

Eclipse创建Spring项目

第一步&#xff1a;先用Eclipse创建一个tomcat项目 打开eclipse 配置tomcat 这里点击add去添加tomcat 创建项目 写好项目名字&#xff0c;点击next 将这个Deploy path修改一下 配置一下项目&#xff0c;将项目部署到tomcat上面去 写个html测试一下 <html><h1>Hel…

公司活动想找媒体报道宣传怎样邀请媒体?

在当今信息爆炸的时代,对于正处于成长阶段的中小企业而言,有效且成本控制得当的宣传策略是推动品牌发展、扩大市场影响力的关键。尤其是在预算有限的情况下,如何让“好钢用在刀刃上”,实现宣传效果的最大化,成为众多企业共同面临的挑战。在此背景下,智慧软文发布系统网站作为一…

会声会影2023软件:安装包下载 丨不限速下载丨亲测好用

会声会影(Corel VideoStudio)为加拿大Corel公司发布的一款功能丰富的视频编辑软件。 会声会影2023简单易用&#xff0c;具有史无前例的强大功能&#xff0c;拖放式标题、转场、覆叠和滤镜&#xff0c;色彩分级、动态分屏视频和新增强的遮罩创建器&#xff0c;超越基本编辑&…

VR虚拟仿真技术模拟还原给水厂内外部结构

在厂区的外围&#xff0c;我们采用VR全景拍摄加3D开发建模的方式&#xff0c;还原了每一处细节&#xff0c;让你仿佛置身于现场&#xff0c;感受那份宁静与庄重。 当你踏入厂区&#xff0c;我们为你精心策划了一条游览路线&#xff0c;从门口到各个重要场景&#xff0c;一一为…

使用ecal protobuf的时候编译过程中报ArenaString、FileDescriptor等无法解析的外部符号错误

c cmake构建的项目在使用ecal和protobuf的时候编译过程报ArenaString、FileDescriptor等无法解析的外部符号错误 查找了很多官网和github上很多资料都没有提及相关的内容。 在windows编译protobuf后&#xff0c;cmake连接找不到符号 - 简书 上提及要使用config模式 设置了co…