编写程序,凯撒密码及大小写字符翻转
1.ord() 函数是 chr() 函数(对于8位的ASCII字符串)或 unichr() 函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的 ASCII 数值,或者 Unicode 数值
2.chr() 用一个范围在 range(256)内的(就是0~255)整数作参数,返回一个对应的字符
"""
编写程序,利用‘凯撒密码’方案,实现对用户输入文字的加密操作
凯撒密码:凯撒密码作为一种最为古老的对称加密体制,通过把字母移动一定的位数来实现加密和解密。
明文中的所有字母都在字母表上向后(或向前)按照一个固定数目进行偏移后被替换成密文。
例如,当偏移量是3的时候,所有的字母A将被替换成D,B变成E,以此类推X将变成A,
Y变成B,Z变成C。由此可见,位数就是凯撒密码加密和解密的密钥。
"""
letter = input("请输入一串字符:")
n=3
p2 = ''
for i in list(letter):
pwd = ord(i) + n
pwd_letter = chr(pwd)
p2 = p2+pwd_letter
print(p2)
测试结果
请输入一串字符:abcderf111
defghui444
3.islower()判断字符是否为小写,是则返回Ture
4.upper()将小写字符转为大写
5.lower()将大写字符转为小写
6.join()将传入对象用指定内容连接
代码示例:
"""
将输入的字符串中大写字符变为小写,小写字母变为大写
"""
letter = input("请输入一串字符:")
a_list = []
for i in letter:
if i.islower():
a_list.append(i.upper())
else:
a_list.append(i.lower())
newstr = ''.join(a_list)
print(letter, "-->", newstr)
测试结果:
请输入一串字符:lajdlajKLJKLJnm,zxnc
lajdlajKLJKLJnm,zxnc --> LAJDLAJkljkljNM,ZXNC