重新学习python15

测试题:
0. 还记得如何定义一个跨越多行的字符串吗(请至少写出两种实现的方法)?

>>> a = "abcdfef\
effsff"
>>> a
'abcdfefeffsff'
>>> 


1. 三引号字符串通常我们用于做什么使用?

用于段落注释;


2. file1 = open('C:\windows\temp\readme.txt', 'r') 表示以只读方式打开“ C: readme.txt ”这个文本文件,但事实上这个语句会报错,知道为什么吗?你会如何修改?

python中默认使用/ 进行转义,而题目中是用\字符转义,\ 与 t   \ 与r 等字符会有转义为其他含义,所以报错。

\t

横向制表符

\r

回车

将题目中的\符号改成/符号即可。
#file1 = open('C:\windows\temp\readme.txt', 'r')
file1 = open(r'C:/windows/temp/readme.txt', 'r')

 

open()函数打开文件路径报错问题

https://blog.csdn.net/marsjhao/article/details/60333312

"""
# 如下会报错
f = open(r'D:\test.txt', 'r')
"""

"""
#改成如下即可:
f = open(r'D:/test.txt', 'r')
"""


3. 有字符串: str1 = '<a href="http://www.fishc.com/dvd"  target="_blank"> 鱼C 资源打包</a>' ,请问如何提取出子字符串:
'www.fishc.com'

str1 = '<a href="http://www.fishc.com/dvd"target="_blank"> 鱼C 资源打包</a>'
a = len(str1)
print(a)
#print(str1[0:29])
str2 = str1[0:29]
print(str2[16:])


4. 如果使用负数作为索引值进行分片操作,按照第三题的要求你能够正确目测出结果吗?

print(str1[-62:-33])
str3 = str1[-62:-33]
b = len(str3)
print(b)
str4 = str3[-13: ]
print(str4)


5. 还是第三题那个字符串,请问下边语句会显示什么内容?
>>> str1[20:-36]

print(str1[20:-36])

#输出
fishc.



6. 据说只有智商高于150 的鱼油才能解开这个字符串(还原为有意义的字符串):

str1 = 'i2sl54ovvvb4e3bferi32s56h;$c43.sfc67o0cm99'

str4 = 'i2sl54ovvvb4e3bferi32s56h;$c43.sfc67o0cm99'
print(str4[::3])

#输出值是ilovefishc.com

动动手:
0. 请写一个密码安全性检查的脚本代码: check.py
# 密码安全性检查代码
#
# 低级密码要求:
# 1. 密码由单纯的数字或字母组成
# 2. 密码长度小于等于8 位
#
# 中级密码要求:
# 1. 密码必须由数字、字母或特殊字符(仅限:)任意两种组合
# 2. 密码长度不能低于8 位
#
# 高级密码要求:
# 1. 密码必须由数字、字母及特殊字符(仅限:)三种组合
# 2. 密码只能由字母开头
# 3. 密码长度不能低于16 位

###3种密码安全级别
symbols = r'''`!@#$%^&*()_+-=/*{}[]\|'";:/?,.<>'''
chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
nums = '0123456789'

passwd = input("请输入密码组合:")

length = len(passwd)

while (passwd.isspace() or length == 0 ) :
    passwd = input("输入密码有误,请重新输入密码:")

if length <= 8 :
    flag = 1
elif length < 16 :
    flag = 2
else :
    flag =3

con = 0

for each in passwd :
    if each in symbols :
        con += 1
        break

for each in passwd :
    if each in chars :
        con += 1
        break

for each in passwd :
    if each in nums :
        con += 1
        break


while 1 :
    print("您的密码安全级别评定为: ", end = "")
    if flag == 1 or con == 1 :
        print("低级!")
    elif flag == 2 or con == 2 :
        print("中级!")
    else :
        print("高级!")
        print("请继续保持!")
      #  break

    print(" 请按以下方式提升您的密码安全级别: \n\
    \t1. 密码必须由数字、字母及特殊字符三种组合\n\
    \t2. 密码只能由字母开头\n\
    \t3. 密码长度不能低于16 位'")

    break

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值