鱼C论坛

 找回密码
 立即注册
查看: 819|回复: 0

《零基础入门学习Python》第020讲,课后作业第二题

[复制链接]
发表于 2018-11-22 03:15:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 光薙 于 2018-11-22 03:39 编辑

写的代码处理字符串大致上正确但是不知道为什么会多出两个换行符来..
def pwfind(str2):
    str2 = '0'+ str2
    str2 += '0000000'
    pw = ''
    lenth = len(str2) - 7
    ans = [0,1,1,1,0,1,1,1,0]
    result = []
    for each in range(lenth):
        substr = str2[(each-1):(each+8)]
        for i in substr:
            result.append(i.isupper())
        if result == ans:
            pw += str2[each+3]
        result = []
    return pw
QQ截图20181122041511.png
好吧我好像知道了...
原来还有左右各3个大写字母夹着换行符的情况
改了一下就可以了
def pwfind(str2):
    str2 = '0'+ str2
    str2 += '0000000'
    pw = ''
    lenth = len(str2) - 7
    ans = [0,1,1,1,1,1,1,1,0]
    result = []
    for each in range(lenth):
        substr = str2[(each-1):(each+8)]
        for i in substr:
            result.append(i.isupper())
        result = result[:4] + [str2[each+3].islower()] + result[5:]
        if result == ans:
            pw += str2[each+3]
        result = []
    return pw

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2026-6-24 10:33

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表