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

python實現(xiàn)字符串加密成純數(shù)字

 更新時間:2019年03月19日 16:51:54   作者:狡猾的皮球  
這篇文章主要為大家詳細(xì)介紹了python實現(xiàn)字符串加密成純數(shù)字,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了python實現(xiàn)字符串加密成純數(shù)字的具體代碼,供大家參考,具體內(nèi)容如下

說明: 

該加密算法僅僅是做一個簡單的加密,安全性就不談了,哈哈. 

算法流程:

1.字符串以utf8編碼成字節(jié)數(shù)組
2.把每一個字節(jié)轉(zhuǎn)換成十進(jìn)制數(shù)字字符串('0'~'255')
3.在每個十進(jìn)制數(shù)字字符串之前加上一個長度位(長度位固定只占1個字符)
4.進(jìn)行數(shù)字替換,例如:(0-1,1-9,2-3,3-8,4-7,5-6,6-2,7-4,8-5,9-0) 

代碼實現(xiàn):

加密:

#加密
def encrypt(srcStr,password='1938762450'):
 #將字符串轉(zhuǎn)換成字節(jié)數(shù)組
 data=bytearray(srcStr.encode('utf-8'))
 #把每個字節(jié)轉(zhuǎn)換成數(shù)字字符串
 strList=[str(byte) for byte in data]
 #給每個數(shù)字字符串前面加一個長度位
 strList=[str(len(s))+s for s in strList]
 #進(jìn)行數(shù)字替換
 for index0 in range(len(strList)):
  tempStr = ""
  for index in range(len(strList[index0])):
   tempStr+=password[int(strList[index0][index])]
  strList[index0]=tempStr
 return "".join(strList)

解密:

#解密
def decrypt(srcStr,password='1938762450'):
 #數(shù)字替換還原
 tempStr=""
 for index in range(len(srcStr)):
  tempStr+=str(password.find(srcStr[index]))
 #去掉長度位,還原成字典
 index=0
 strList=[]
 while True:
  #取長度位
  length=int(tempStr[index])
  #取數(shù)字字符串
  s=tempStr[index+1:index+1+length]
  #加入到列表中
  strList.append(s)
  #增加偏移量
  index+=1+length
  #退出條件
  if index>=len(tempStr):
   break
 data=bytearray(len(strList))
 for i in range(len(data)):
  data[i]=int(strList[i])
 return data.decode('utf-8')

測試:

if __name__ == '__main__':
 ret=encrypt('id:123,time:7200,key:123456789987654321','1938762450')
 print('密文:',ret)
 
 ret=decrypt(ret,'1938762450')
 print('原文:',ret)

運(yùn)行結(jié)果:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 基于OpenCV python3實現(xiàn)證件照換背景的方法

    基于OpenCV python3實現(xiàn)證件照換背景的方法

    這篇文章主要介紹了基于OpenCV python3實現(xiàn)證件照換背景的方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-03-03
  • Python實現(xiàn)感知器模型、兩層神經(jīng)網(wǎng)絡(luò)

    Python實現(xiàn)感知器模型、兩層神經(jīng)網(wǎng)絡(luò)

    這篇文章主要為大家詳細(xì)介紹了Python實現(xiàn)感知器模型、兩層神經(jīng)網(wǎng)絡(luò),文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-12-12
  • Python的多維空數(shù)組賦值方法

    Python的多維空數(shù)組賦值方法

    下面小編就為大家分享一篇Python的多維空數(shù)組賦值方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Python導(dǎo)入自定義路徑的方法

    Python導(dǎo)入自定義路徑的方法

    這篇文章主要介紹了Python導(dǎo)入自定義路徑的方法,文章基于python的相關(guān)資料展開詳細(xì)內(nèi)容介紹,需要的小伙伴可以參考一下
    2022-04-04
  • OpenCV-Python給圖像去除水印多種方法

    OpenCV-Python給圖像去除水印多種方法

    這篇文章主要給大家介紹了關(guān)于OpenCV-Python給圖像去除水印的多種方法,文中介紹的每種方法都有其適用場景和實現(xiàn)步驟,具體實現(xiàn)需要根據(jù)實際情況選擇和調(diào)整,需要的朋友可以參考下
    2024-12-12
  • Python的缺點(diǎn)和劣勢分析

    Python的缺點(diǎn)和劣勢分析

    在本篇文章里小編給大家整理了關(guān)于Python的缺點(diǎn)和劣勢總結(jié),有興趣的朋友們可以學(xué)習(xí)下。
    2019-11-11
  • 好用的Python編輯器WingIDE的使用經(jīng)驗總結(jié)

    好用的Python編輯器WingIDE的使用經(jīng)驗總結(jié)

    WingIDE是個專為python程序語言設(shè)計的集成開發(fā)環(huán)境。從1999年起,Wingware公司便開始專注于python開發(fā),目前WingIDE已經(jīng)是著名的python開發(fā)框架,面向項目風(fēng)格的 IDE 對于大型產(chǎn)品非常有用, 是個很有前途的開發(fā)環(huán)境。
    2016-08-08
  • pycharm中成功運(yùn)行圖片的配置教程

    pycharm中成功運(yùn)行圖片的配置教程

    今天小編就為大家分享一篇pycharm中成功運(yùn)行圖片的配置教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • Python集合操作方法詳解

    Python集合操作方法詳解

    這篇文章主要介紹了Python集合操作方法詳解,需要的朋友可以參考下
    2020-02-02
  • Python通過pytesseract庫實現(xiàn)識別圖片中的文字

    Python通過pytesseract庫實現(xiàn)識別圖片中的文字

    Pytesseract是一個Python的OCR庫,它可以識別圖片中的文本并將其轉(zhuǎn)換成文本形式。本文就來用pytesseract庫實現(xiàn)識別圖片中的文字,感興趣的可以了解一下
    2023-05-05

最新評論

湘西| 九江县| 辛集市| 吉隆县| 金乡县| 霍林郭勒市| 黄龙县| 怀化市| 甘泉县| 平昌县| 沁源县| 镇赉县| 新邵县| 安岳县| 芜湖市| 双峰县| 射阳县| 抚远县| 慈溪市| 镇江市| 定西市| 墨玉县| 新昌县| 桑日县| 三江| 新龙县| 北海市| 会同县| 泰来县| 阳泉市| 东乌珠穆沁旗| 嘉义县| 镇康县| 伊通| 色达县| 芜湖市| 梧州市| 建昌县| 中卫市| 合作市| 田东县|