鱼C论坛

 找回密码
 立即注册
查看: 1605|回复: 12

[作品展示] 我用最傻逼的方式做出了这道题目!!T T

[复制链接]
发表于 2022-5-25 11:13:58 | 显示全部楼层 |阅读模式

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

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

x
程序员的快乐只有程序员才能了解。
1. 请用已学过的知识编写程序,找出小甲鱼藏在下边这个长字符串中的密码,密码的埋藏点符合以下规律:
a) 每位密码为单个小写字母
b) 每位密码的左右两边均有且只有三个大写字母
(由于我们还没有学习到文件读取方法,大家下载后拷贝过去即可)
请下载字符串文件:

还有记得小甲鱼的这道题吗?

我用最傻逼的方式, 用5行代码给完成了。。。
str1 = 'ACFlCTLIQlAIVMTqHFkswqbDDHtpgcWaXSSglUYKE'
list1 =[]
for i in range(len(str1)-8):
    if str1[i].islower() and str1[i+1].isupper() and str1[i+2].isupper() and str1[i+3].isupper() and str1[i+4].islower() and str1[i+5].isupper() and str1[i+6].isupper() and str1[i+7].isupper() and str1[i+8].islower():
        print(str1[i+4])


有人能了解这种解题的快乐吗?

string2.zip

6.17 KB, 下载次数: 1

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-5-25 11:23:58 | 显示全部楼层
不明觉厉,刚开始上课,还没做到这个课后习题
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-25 11:31:15 | 显示全部楼层
dk0205 发表于 2022-5-25 11:23
不明觉厉,刚开始上课,还没做到这个课后习题

哈哈哈, 我已经上到爬虫了, 没接着学了 去学习pandas 去了。 现在只是每天重新做两道题巩固一下。 话说这道题第二次做还是做不出来,最后被我硬生生的换着方法做了出来
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-25 11:32:02 | 显示全部楼层
dk0205 发表于 2022-5-25 11:23
不明觉厉,刚开始上课,还没做到这个课后习题

已经学完了, 重新开始做题巩固了 哈哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-25 11:57:14 | 显示全部楼层
没有学到,希望可以坚持到这里吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-25 13:54:42 | 显示全部楼层
tfi0201 发表于 2022-5-25 11:57
没有学到,希望可以坚持到这里吧

看视频做练习 简单呢。 加油
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-25 14:17:59 | 显示全部楼层
if str1[i].islower() and str1[i+1:i+4].isupper() and str1[i+4].islower() and str1[i+5:i+8].isupper() and str1[i+8].islower():
可以适当的减少一些代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-25 14:22:10 | 显示全部楼层
本帖最后由 wp231957 于 2022-5-25 14:23 编辑

但是你的代码是错的
你比如:
str1 = 'AAAbCCC'
list1 =[]
for i in range(len(str1)-8):
    if str1[i].islower() and str1[i+1].isupper() and str1[i+2].isupper() and str1[i+3].isupper() and str1[i+4].islower() and str1[i+5].isupper() and str1[i+6].isupper() and str1[i+7].isupper() and str1[i+8].islower():
        print(str1[i+4])
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-25 18:57:43 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-5-25 19:34:09 | 显示全部楼层
第一个为什么要判断是小写???第一个可以是大写的啊,要不AAAaAAAa,不就找不到了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-5-25 22:20:09 | 显示全部楼层
本帖最后由 破碎的阳光 于 2022-5-25 22:22 编辑
str1 = 'ACFlCTLIQlAIVMTqHFkswqbDDHtpgcWaXSSglUYKE'
for i in range(3,len(str1)-3):
    if str1[i-3:i-1].isupper() and str1[i+1:i+3].isupper() and str1[i].islower():
        print('这串密码的第',i+1,'个字符:',str1[i],'是真正的密码!')


这串密码的第 4 个字符: l 是真正的密码!
这串密码的第 10 个字符: l 是真正的密码!
这串密码的第 16 个字符: q 是真正的密码!
这串密码的第 37 个字符: l 是真正的密码!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-26 20:55:21 | 显示全部楼层
wp231957 发表于 2022-5-25 14:22
但是你的代码是错的
你比如:

这样子吗。。 哈哈。 答案对了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-5-26 20:56:13 | 显示全部楼层
wp231957 发表于 2022-5-25 14:17
if str1.islower() and str1.isupper() and str1.islower() and str1.isupper() and str1.islower():
可以 ...

有道理啊。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-18 03:28

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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