1.貼題
題目來(lái)自PythonTip
信息加密
給你個(gè)小寫英文字符串a(chǎn)和一個(gè)非負(fù)數(shù)b(0<=b<26), 將a中的每個(gè)小寫字符替換成字母表中比它大b的字母。這里將字母表的z和a相連,如果超過了z就回到了a。
例如a=”cagy”, b=3,
則輸出 :fdjb
2.說(shuō)明
考察點(diǎn)
- 英文字母與數(shù)字的轉(zhuǎn)換
- 如果超過z的處理
3.參考代碼
c = "" #定義空字符串c用于存放加密后的字符串 for j in a: #遍歷字符串a(chǎn)中的每一個(gè)英文小寫字母 if ord(j)+b < 124: #判斷加密后是否不超過z c += chr(ord(j)+b) #如果不超過則直接添加 else: c += chr(ord(j)+b-26) #否則添加回到開頭的字母 print(c) #打印加密后的字符串
4.其他寫法
1.取余法
print ''.join([chr(ord('a')+(ord(x)+3-ord('a'))%26) for x in a])
2.構(gòu)造法
def conve(a,b): low_set='abcdefghijklmnopqrstuvwxyz'*2 res='' for x in a: res+=low_set[low_set.index(x)+b] return res a=conve(a,b) print a
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
