鱼C论坛

 找回密码
 立即注册
查看: 357|回复: 5

020讲的一个问题

[复制链接]
最佳答案
0 
发表于 2018-2-13 23:15:10 | 显示全部楼层 |阅读模式

马上注册加入鱼C,享用更多服务吧^_^

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

x
本帖最后由 葑纆 于 2018-2-14 12:26 编辑

  1. a = '''ACFlCTLIQlAIVMTqHFkswqbDDHtpgcWaXSSglUYKE
  2. lqNsYCyaQXBzrFUbkAUAWAKrDgDtAlGMBqWQhpEwquZqWZJpslUfMllCwWptqINjrOBTLuPzwvXNbLCx
  3. oFRritKRpJgBOaGPZdkUzvYnvYmAlEsVmKRXqyQUOdCBqLYyboOYeAQNLnkuiDXCiNiksSSRpDMVQQgs
  4. TmYThnppfKSmkpjjceGLaMOvYgsvNkGENKgGtUSzVPlLMeephDKrWGNpAxBqRiCnQIuKwDZurIRsznUp'''
  5. def password(a):
  6.     A = list(a)
  7.     for each in A:
  8.         if '\n' in A:
  9.             A.remove('\n')#去除列表中的‘\n’
  10.     length = len(A)
  11.     last = length - 4
  12.     b = ''
  13.     for i in range(length):
  14.         if A[i].isalpha():
  15.             #条件一:每个密码都是单个小写字母
  16.             if 3<= i <= last and A[i].islower():
  17.                 #条件二:密码左右两边有且只有三个大写字母
  18.                 if (A[i-3]and A[i-2]and A[i-1]and A[i+1]and A[i+2]and A[i+3]).isupper() and not(A[i-4]and A[i+4]).isupper():
  19.                     b += A[i]
  20.                     
  21.     print(b)

  22. password(a)
复制代码

这个程序运行后发现条件一和条件二都不能完全满足,但是却可以筛选部分
最佳答案
346 
发表于 2018-2-14 07:28:17 | 显示全部楼层

  1. a = '''ACFlCTLIQlAIVMTqHFkswqbDDHtpgcWaXSSglUYKE
  2. lqNsYCyaQXBzrFUbkAUAWAKrDgDtAlGMBqWQhpEwquZqWZJpslUfMllCwWptqINjrOBTLuPzwvXNbLCx
  3. oFRritKRpJgBOaGPZdkUzvYnvYmAlEsVmKRXqyQUOdCBqLYyboOYeAQNLnkuiDXCiNiksSSRpDMVQQgs
  4. TmYThnppfKSmkpjjceGLaMOvYgsvNkGENKgGtUSzVPlLMeephDKrWGNpAxBqRiCnQIuKwDZurIRsznUp'''
  5. def password(a):
  6.     A = list(a)
  7.     for each in A:
  8.         if '\n' in A:
  9.             A.remove('\n')#去除列表中的‘\n’
  10.     length = len(A)
  11.     last = length - 4
  12.     b = ''
  13.     for i in range(length):
  14.         if A[i] == 'x' or A[i] == 'X':
  15.             #条件一:每个密码都是单个小写字母
  16.             if 3<= i <= last and A[i].islower():
  17.                 #条件二:密码左右两边有且只有三个大写字母
  18.                 if (A[i-3]and A[i-2]and A[i-1]and A[i+1]and A[i+2]and A[i+3]).isupper() and not(A[i-4]and A[i+4]).isupper():
  19.                     b += A[i]
  20.                     
  21.     print(b)

  22. password(a)
复制代码

你要是嫩告诉我x是什么就好了。
最佳答案
5 
发表于 2018-2-14 08:49:44 | 显示全部楼层
第15行if A[i] in (x or X), 这两个x 没看到有对应的定义。
最佳答案
0 
 楼主| 发表于 2018-2-14 12:28:15 | 显示全部楼层
新手·ing 发表于 2018-2-14 07:28
你要是嫩告诉我x是什么就好了。

忘记修改了,之前定义过x = ‘abc...’#26个小写字母,X = ‘ABC...’#26个大写字母
最佳答案
0 
 楼主| 发表于 2018-2-14 12:29:36 | 显示全部楼层
新手·ing 发表于 2018-2-14 07:28
你要是嫩告诉我x是什么就好了。

忘记修改了,之前定义过
  1. x = 'abc...' #26个小写字母
  2. X = 'ABC..' #26个大写字母
复制代码
最佳答案
0 
 楼主| 发表于 2018-2-14 12:31:15 | 显示全部楼层
checkily 发表于 2018-2-14 08:49
第15行if A in (x or X), 这两个x 没看到有对应的定义。

忘记修改了,之前定义过x = ‘abc...’#26个小写字母,X = ‘ABC...’#26个大写字母
不过后来修改了if条件,然后忘记全部修改过来,不过就算修改过后也是一样的错误
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐上一条 /1 下一条

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号

GMT+8, 2018-8-15 23:01

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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