我需要帮助改变弱密码的学校项目,以便它们具有相同数量的大写和小写。
我尝试使用for
循环来定位0
和一半长度之间的每个字母:
lengthhalf=length/2
if upcount != lowcount:
str.lower(psswd[0:lengthhalf])
print psswd
我还将lengthhalf+1
定位到length
-
str.upper(psswd[lengthhalf+1::length])
但它不会影响任何事情。
答案 0 :(得分:1)
psswd = psswd[:lengthhalf].lower() + psswd[lengthhalf:].upper()
应该做你可能想做的事情。
我不确定你想用奇怪的“密码”做什么。
代码中的问题是:
答案 1 :(得分:0)
你的规范可以有不同的解释,但是下面应该通过第一次分成两个具有备用项目的列表,然后再将它们重新交织在一起来完成这个技巧:
pwd = "absdef"
pwd = list(pwd)
l1 = pwd[::2]
l1 = [c.upper() for c in l1]
l2 = pwd[1::2]
l2 = [c.lower() for c in l2]
new_pwd_list = [val for pair in zip(l1, l2) for val in pair]
print "".join(new_pwd_list)
可能不会以有意义的方式处理非数字字符,但它会让你交替使用。