最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python實(shí)現(xiàn)密鑰密碼(加解密)實(shí)例詳解

 更新時(shí)間:2020年04月26日 11:09:41   作者:SFS_Ccjm  
這篇文章主要介紹了Python實(shí)現(xiàn)密鑰密碼(加解密),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

密鑰密碼

在這里插入圖片描述

'''
如密鑰短語密碼為: university -> universty
明文: abcdefghijklmnopqrstuvwxyz
密文:jklmopqwxzuniverstyabcdfgh
'''

構(gòu)造映射字典

# 構(gòu)造映射 asc ---> crypt
def dic(x):
  list_x =[]
  list_z = []
  for i in x:
    list_x.append(ord(i))
  for i in range(97,123):
    if i not in list_x:
      list_x.append(i)
  list_ = list_x[26-len(x)-1:]
  cr = list_+list_x[:26-len(list_)]
  for i in range(97,123):
    list_z.append(i)
  return dict(map(lambda x,y:[x,y],list_z,cr))


# 構(gòu)造映射 crypt ---> asc
def dic_2(x):
  list_x =[]
  list_z = []
  for i in x:
    list_x.append(ord(i))
  for i in range(97,123):
    if i not in list_x:
      list_x.append(i)
  list_ = list_x[26-len(x)-1:]
  cr = list_+list_x[:26-len(list_)]
  for i in range(97,123):
    list_z.append(i)
  return dict(map(lambda x,y:[x,y],cr,list_z))

密鑰去重

# 密鑰去重
def remove(x):
  unique_x = []
  for i in x:
    if i not in unique_x:
      unique_x.append(i)
  return unique_x

加解密

# 加密
def encode():
  x = input('請(qǐng)輸入密鑰字符:')
  if not x.isalpha():
    print('請(qǐng)輸入正確的密鑰格式!')
    exit(0)
  s = input('請(qǐng)輸入明文:')
  print('加密后字符:',end='')
  unique_x = remove(x)
  dic_ = dic(unique_x)
  for i in s:
    if i.isspace():
      print(' ', end='')
    else:
      print(chr(dic_[ord(i)]),end='')


# 解密
def decode():
  x = input('請(qǐng)輸入密鑰字符:')
  if not x.isalpha():
    print('請(qǐng)輸入正確的密鑰格式!')
    exit(0)
  s = input('請(qǐng)輸入密文:')
  print('解密后字符:',end='')
  unique_x = remove(x)
  dic_ = dic_2(unique_x)
  for i in s:
    if i.isspace():
      print(' ',end='')
    else:
      print(chr(dic_[ord(i)]),end='')

程序入口

# 輸入指令
answer = input(f'請(qǐng)輸入所需的操作:編碼/E or 解碼/D: ')
try:
  if answer.upper() == 'E':
    encode()
  elif answer.upper() == 'D':
    decode()
  else:
    print('輸入錯(cuò)誤!')
except KeyError:
  print('請(qǐng)正確輸入小寫字母!')

實(shí)現(xiàn)效果

注:可以輸入空格
輸出大小寫:請(qǐng)自行修改

請(qǐng)輸入所需的操作:編碼/E or 解碼/D:  e
請(qǐng)輸入密鑰字符:university
請(qǐng)輸入明文:abcdefghijklmnopqrstuvwxyz
加密后字符:jklmopqwxzuniverstyabcdfgh

請(qǐng)輸入所需的操作:編碼/E or 解碼/D:  d
請(qǐng)輸入密鑰字符:university
請(qǐng)輸入密文:jklmopqwxzuniverstyabcdfgh
解密后字符:abcdefghijklmnopqrstuvwxyz

到此這篇關(guān)于Python實(shí)現(xiàn)密鑰密碼(加解密)的文章就介紹到這了,更多相關(guān)python 密鑰密碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • pyqt和pyside開發(fā)圖形化界面

    pyqt和pyside開發(fā)圖形化界面

    選擇PyQt或PySide來開發(fā)圖形界面是因?yàn)镻ython和Qt的跨平臺(tái)特性,Qt5甚至支持iOS和Android,并且開發(fā)相同的軟件,Python的效率是極高的,下面看使用示例
    2014-01-01
  • 基于python爬取有道翻譯過程圖解

    基于python爬取有道翻譯過程圖解

    這篇文章主要介紹了基于python爬取有道翻譯過程圖解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • 簡(jiǎn)單介紹Python中的JSON使用

    簡(jiǎn)單介紹Python中的JSON使用

    這篇文章主要介紹了Python中的JSON使用,示例代碼基于Python2.x版本,需要的朋友可以參考下
    2015-04-04
  • Pandas GroupBy對(duì)象 索引與迭代方法

    Pandas GroupBy對(duì)象 索引與迭代方法

    今天小編就為大家分享一篇Pandas GroupBy對(duì)象 索引與迭代方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-11-11
  • python非遞歸全排列實(shí)現(xiàn)方法

    python非遞歸全排列實(shí)現(xiàn)方法

    下面小編就為大家?guī)硪黄猵ython非遞歸全排列實(shí)現(xiàn)方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-04-04
  • Python 實(shí)用技巧之利用Shell通配符做字符串匹配

    Python 實(shí)用技巧之利用Shell通配符做字符串匹配

    這篇文章主要介紹了Python 實(shí)用技巧之利用Shell通配符做字符串匹配的方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08
  • Python定時(shí)任務(wù)sched模塊用法示例

    Python定時(shí)任務(wù)sched模塊用法示例

    這篇文章主要介紹了Python定時(shí)任務(wù)sched模塊用法,結(jié)合實(shí)例形式分析了定時(shí)任務(wù)sched模塊的基本功能、參數(shù)含義、多線程定時(shí)任務(wù)等相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • Python爬取網(wǎng)頁的所有內(nèi)外鏈的代碼

    Python爬取網(wǎng)頁的所有內(nèi)外鏈的代碼

    這篇文章主要介紹了Python爬取網(wǎng)頁的所有內(nèi)外鏈,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-04-04
  • 一文教你利用Python租到最合適的房子

    一文教你利用Python租到最合適的房子

    這篇文章主要為大家詳細(xì)介紹了如何利用Python語言在爬取到房源數(shù)據(jù)后,挑選出符合自己要求的房子呢?感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-09-09
  • python中mediapipe庫踩過的坑實(shí)戰(zhàn)記錄

    python中mediapipe庫踩過的坑實(shí)戰(zhàn)記錄

    MediaPipe是由google制作的開源的、跨平臺(tái)的機(jī)器學(xué)習(xí)框架,可以將一些模型部署到不同的平臺(tái)和設(shè)備上使用的同時(shí),也能保住檢測(cè)速度,下面這篇文章主要給大家介紹了關(guān)于python中mediapipe庫踩過的坑的相關(guān)資料,需要的朋友可以參考下
    2023-04-04

最新評(píng)論

合山市| 武鸣县| 游戏| 楚雄市| 都昌县| 尖扎县| 苍梧县| 彩票| 奉节县| 延边| 本溪| 手游| 威宁| 临夏县| 太白县| 临沂市| 五莲县| 伊春市| 金平| 南岸区| 平阴县| 邢台市| 乌鲁木齐市| 宾阳县| 和田县| 东乡| 延吉市| 日喀则市| 巨野县| 宜君县| 华容县| 朔州市| 岳西县| 监利县| 紫金县| 体育| 天镇县| 龙海市| 苍山县| 巴里| 兴和县|