快来GET属于程序员间的悄悄话吧~
💡前言☀️☀️
不瞒你们说,我第一次用MD编辑器😳😳,看到大佬们都在用,我也来试试。😉😉用起来还真不习惯呢,但话说回来,这编辑器真的炫酷😵😵还能加表情包,使用也非常方便,爱了爱了~💕💕要不你也来试试?表情包素材代码在这里💡💡点我点我
咳咳,说回正题⚡️⚡️如果想跟朋友出去聚一聚,但又怕女朋友发现咋办?这不得跟好兄弟打个暗号?😏😏
没错,这篇文章就是教你如何与好兄弟之间进行秘密交流的👀👀
💡基本原理✨✨
🍎将汉字或其他字符通过Unicode编码实现与二进制数之间相互转换。
💡明文加密✨✨
🍎汉字与其他字符在Unicode编码集中都有唯一一个对应的值,那么我们可以使用ord函数获取字符对应的编码,之后使用bin函数将编码转换成二进制形式,最后将二进制数传递给对方实现加密。🌟🌟🌟
💡💡代码实现✨✨
s = "好兄弟好兄弟,今晚八点半老地方不见不散,谁先倒谁请客~"
print(s)
bins = ""
for i in s:
# 使用bin函数转换成二进制时会有前缀0b我们使用[2:]将其去除
bins += bin(ord(i))[2:] + ' ' # 每个字符后面都需加个空格与其他字符区分开
print(bins)
💡暗文解密✨✨
🍎我们使用int函数将每个二进制数转换成十进制数,然后chr函数将Unicode编码转换成对应的字符,即可完成解密。🌟🌟🌟
💡💡代码实现✨✨
s = "好兄弟好兄弟,今晚八点半老地方不见不散,谁先倒谁请客~"
print(s)
bins = ""
for i in s:
# 使用bin函数转换成二进制时会有前缀0b我们使用[2:]将其去除
bins += bin(ord(i))[2:] + ' ' # 每个字符后面都需加个空格与其他字符区分开
print(bins)
# 将存放二进制数的字符串根据空格进行分割以获取每个二进制数
targets = bins.split()
# 将每个二进制数先转换成十进制数,在根据编码转换成对应字符
targets = [chr(int(i, 2)) for i in targets]
print(''.join(targets))
🍭🍭这位盆友,你学废了吗?
💡想说的话☀️☀️
🔑唯有亲身体会才知道创作的不容易呀,看别人写的文章那么的炫彩殊不知是与他们的付出成正比的,向他们学习。😮😮🌹🌹
来源:愿此后再无WA