专栏首页企鹅号快讯Python学习笔记(八)-四个小程序

Python学习笔记(八)-四个小程序

# 字符串格式化符号说明

# %c 格式化字符及其ASCII码

# %s 格式化字符串

# %d 格式化整数

# %o 格式化无符号八进制数

# %x 格式化无符号十六进制数

# %X 格式化无符号十六进制数(大写)

# %f 格式化定点数,可指定小数点后的精度

# %e 用科学计数法格式化定点数

# %E 作用同%e,用科学计数法格式化定点数

# %g 根据值的大小决定使用%f或者%e

# %G 作用同%g,根据值的大小决定使用%F或者%E

#编写一个进制转换程序,十进制转换二进制可以用bin()

q =True

whileq:

num =input('请输入一个整数(输入Q结束程序):')

ifnum.isdigit():

num =int(num)

print('十进制 -> 十六进制 : %d -> 0x%x'% (num,num))

print('十进制 -> 八进制 : %d -> 0o%o'% (num,num))

print('十进制 -> 二进制 : %d -> '% num,bin(num))

elifnumin('Q','q'):

q =False

print("程序结束")

else:

continue

#现有一个列表[1, 2.1, 2.3, 'a', '1', True],写一个方法,计算里面各数字类型的和

#即遇到字符时,自动跳过。

defsum(x):

result=

foreachinx:

ifisinstance(each,int)orisinstance(each,float):

print(each)

result+=each

else:

continue

returnresult

res=sum([1,2.1,2.3,'a','1', True])

print(res)

# s为字符串

# s.isalnum() 所有字符都是数字或者字母

# s.isalpha() 所有字符都是字母

# s.isdigit() 所有字符都是数字

# s.islower() 所有字符都是小写

# s.isupper() 所有字符都是大写

# s.istitle() 所有单词都是首字母大写,像标题

# s.isspace() 所有字符都是空白字符、\t、\n、\r

# 判断是整数还是浮点数

# a=123

# b=123.123

#

# >>>isinstance(a,int)

# True

# >>>isinstance(b,float)

# True

# >>>isinstance(b,int)

# False

#有一个学生成绩表2. score = [['小明', 85], ['小文', 80], ['小红', 65], ['小黄', 95]],

#根据学生名称查找成绩。

score = [['小明',85],['小文',80],['小红',65],['小黄',95]]

name=input("请输入学生名字:")

# length=len(score)

# print(length)

# i=0

# stuScore=-1

# while i

# if score[i][0] ==name:

# stuScore=score[i][1]

# print(name,"的成绩是:",stuScore)

# break

# else:

# i+=1

# if stuScore==-1:

# print("没有该学生")

IsFind =False

foreachinscore:

ifnameineach:

print(name +'的得分是:',each[1])

IsFind =True

break

ifIsFind ==False:

print('查找的数据不存在!')

# 密码安全性检查

# 低级密码要求:

# 1. 密码由单纯的数字或字母组成

# 2. 密码长度小于等于8位

# 中级密码要求:

# 1. 密码必须由数字、字母或特殊字符(仅限:~!@#$%^&*()_=-/,.?;:[]{}\)任意两种组合

# 2. 密码长度不能低于8位

# 高级密码要求:

# 1. 密码必须由数字、字母及特殊字符(仅限:~!@#$%^&*()_=-/,.?;:[]{}\)三种组合

# 2. 密码只能由字母开头

# 3. 密码长度不能低于16位

symbols =r'''`!@#$%^&*()_+-=/*{}[]\'";:/?,.'''

chars ='abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'

nums ='0123456789'

passwd =input('请输入需要检查的密码组合:')

# 判断长度

length =len(passwd)

while(passwd.isspace()orlength ==) :

passwd =input("您输入的密码为空(或空格),请重新输入:")

iflength

flag_len =1

elif8< length

flag_len =2

else:

flag_len =3

flag_con =

# 判断是否包含字母

foreachinpasswd:

ifeachinchars:

flag_con +=1

break

# 判断是否包含数字

foreachinpasswd:

ifeachinnums:

flag_con +=2

break

# 判断是否包含特殊字符

foreachinpasswd:

ifeachinsymbols:

flag_con +=5

break

#密码只能以字母开头

pwdFirstStr=

ifpasswd[:1]inchars:

pwdFirstStr=1

print("pwdFirstStr",pwdFirstStr)

# 打印结果

while1:

#print("您的密码安全级别评定为:", end='')

# 低级密码要求:

# 1. 密码由单纯的数字或字母组成

# 2. 密码长度小于等于8位

ifflag_len ==1orflag_conin(1,2) :

print("您的密码安全级别评定为:低")

# 中级密码要求:

# 1. 密码必须由数字、字母或特殊字符(仅限:~!@#$%^&*()_=-/,.?;:[]{}\)任意两种组合

# 2. 密码长度不能低于8位

elifflag_lenin(2,3)orflag_conin(3,6,7):

print("您的密码安全级别评定为:中")

# 高级密码要求:

# 1. 密码必须由数字、字母及特殊字符(仅限:~!@#$%^&*()_=-/,.?;:[]{}\)三种组合

# 2. 密码只能由字母开头

# 3. 密码长度不能低于16位

elifflag_len==3andflag_con ==8andpwdFirstStr==1:

print("您的密码安全级别评定为:高")

print("请继续保持")

break

else:

print("输入的密码不符合格式要求!")

print("请按以下方式提升您的密码安全级别:\n\

\t1. 密码必须由数字、字母及特殊字符三种组合\n\

\t2. 密码只能由字母开头\n\

\t3. 密码长度不能低于16位'")

break

往期笔记

本文来自企鹅号 - 软件测试经验与教训媒体

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 2017年度最不安全密码报告,看看你的密码安全吗?

    密码管理安全公司SplashData发布了2017年度密码报告,对网上泄露的密码进行了分析,找出最不安全的100个弱密码。密码分析的数据来源于500万外泄的密码...

    企鹅号小编
  • 什么样的密码才是安全的?

    什么样的密码才是安全的?相信这样的老生常谈你已经听腻了:密码设置得长一些,混合数字字母符号,避免任何可能容易联系到你本身的密码。但现实是在街头调查中大多数人并没...

    企鹅号小编
  • 你的密码被破解了?看看你的Apple ID、邮箱密码是不是这些!

    今天小沃本来想买元旦的车票来着,结果发现密码忘了,在输入两次错误以后,为了防止账户冻结选择了重新设置密码。卖票的 App 还不让设置太简单的密码,本来还想吐槽整...

    企鹅号小编
  • Java 使用 endorsed 覆盖jdk提供的类

    java404
  • 机器学习中数据处理与可视化的python、numpy等常用函数

    版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/sinat_35512245/articl...

    大黄大黄大黄
  • python中3种调用可执行文件.exe

    方法一、os.system()  会保存可执行程序中的打印值和主函数的返回值,且会将执行过程中要打印的内容打印出来

    py3study
  • 有关Visual Studio 2010 RTM与Windows Mobile/Windows Phone开发

        4月12日参加了Visual Studio 2010的首发活动,回来通过MSDN Subscription下载了Windows 7 Utimate和Vi...

    ShiJiong
  • 《等你下课》让我们一起一步一步搭建RocketMQ可视化管理控制台

    早晨起来,听着杰伦的新歌《等你下课》,轻快的旋律,动听的曲调,让我回想18岁的我........

    麦克劳林
  • Linux Token Auth 一次性密码认证

    Linux Token Auth 一次性密码认证 http://netkiller.github.io/journal/token.html 目录 1. 什么是...

    netkiller old
  • python中的多进程运用

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。 ...

    云雀叫了一整天

扫码关注云+社区

领取腾讯云代金券