python dict 词典解密
简单密码
http://www.nowcoder.com/questionTerminal/7960b5038a2142a18e27e4c733855dac
解析题目,其实就是分三步骤,小写字母怎么转换,大写字母怎么转换,数字怎么转换。
解题过程中,dic的便利要注意下。
直接for key in dic 便利出来的是key值。想获得value得使用dict.get(key,None)
或者for key,value in dic.items() dic.items() 是以列表形式返回可便利的(键,值)元祖数组。
code_str =input()
dic ={"1":1,"abc":2,"def":3,"ghi":4,"jkl":5,"mno":6,"pqrs":7,"tuv":8,"wxyz":9,"0":0}
out_str = []
for x in code_str:
if x.islower():
# for key in dic:
# dict.get(key, default=None)返回指定键的值,如果值不在字典中返回default值
# dict.items()以列表返回可遍历的(键, 值) 元组数组
for key,value in dic.items():
if x in key:
out_str.append(str(value))
elif x.isupper():
if x.lower()=='z':
x = 'a'
else:
x = chr(ord(x.lower())+1)
out_str.append(x)
elif x.isdigit():
out_str.append(x)
out_str_join = ''.join(out_str)
print(out_str_join)