溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python字符串操作方法怎么使用

發(fā)布時(shí)間:2023-04-11 15:15:22 來源:億速云 閱讀:105 作者:iii 欄目:開發(fā)技術(shù)

這篇“Python字符串操作方法怎么使用”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Python字符串操作方法怎么使用”文章吧。

實(shí)例1:獲取星期字符串

程序讀入一個(gè)表示星期幾的數(shù)字(1~7),輸出對(duì)應(yīng)的星期字符串名稱。例如,輸入 3,返回“星期三”。

代碼如下:

weekstr = "星期一星期二星期三星期四星期五星期六星期日"
weekid = eval(input("請(qǐng)輸入星期數(shù)字(1~7):"))
pos = (weekid - 1) * 3                  # 獲取對(duì)應(yīng)星期的起始位置
print(weekstr[pos: pos+3])

程序運(yùn)行結(jié)果如下:

請(qǐng)輸入星期數(shù)字(1~7):6
星期六

題目通過在字符串中截取適當(dāng)子串實(shí)現(xiàn)星期名稱的查找。問題的關(guān)鍵在于找出子串的剪切位置。因?yàn)槊總€(gè)星期日期的縮寫都由 3 個(gè)字符組成,如果知道星期日期字符串的起始位置,就能很容易獲得縮寫子串。 通過下面語句,可以獲得從起始位置pos開始且長度為 3 的子串:

weekAbbr = weekstr[pos: pos+3]

使用字符串作為查找表的缺點(diǎn)是,所剪切的子字符串長度必須相同。如果各縮寫表示長度不同,還需要其他語句輔助。

實(shí)例2:獲取月份字符串

參考實(shí)例1,實(shí)現(xiàn)一個(gè) “獲取月份字符串” 的程序,要求根據(jù)1~12的數(shù)字返回對(duì)應(yīng)月份的名稱。

思路和實(shí)例1差不多,但是因?yàn)?十一月十二月 是 3 個(gè)字,所以我們?cè)黾恿伺袛嗾Z句。

代碼如下:

monthstr = "一月二月三月四月五月六月七月八月九月十月十一月十二月"
monthid = eval(input("請(qǐng)輸入月份數(shù)字(1~12):"))
if monthid > 0 and monthid <= 10:      # 1月到 10 月的情況
    pos = (monthid - 1) * 2                      # 獲取對(duì)應(yīng)月份的起始位置
    print(monthstr[pos: pos + 2])
elif monthid == 11:                                # 11 月的情況
    pos =  (monthid - 1) * 2                      # 獲取對(duì)應(yīng)月份的起始位置
    print(monthstr[pos: pos + 3])
elif monthid == 12:                                 # 11 月的情況
    pos = (monthid - 1) * 2 + 1                 # 獲取對(duì)應(yīng)月份的起始位置
    print(monthstr[pos: pos + 3])
else:
    print("輸入有誤!")

程序運(yùn)行結(jié)果如下:

請(qǐng)輸入月份數(shù)字(1~12):6
六月 請(qǐng)輸入月份數(shù)字(1~12):11
十一月 請(qǐng)輸入月份數(shù)字(1~12):12
十二月 請(qǐng)輸入月份數(shù)字(1~12):13
輸入有誤!

實(shí)例3:愷撒密碼

設(shè)想在某些情況下給朋友傳遞字條信息,但又不希望傳遞中途被第三方看懂這些信息,因此需要對(duì)字條信息進(jìn)行加密處理。傳統(tǒng)加密算法很多,這里介紹一種非常簡(jiǎn)單的加密算法&mdash;&mdash;凱撒密碼。 凱撒密碼是古羅馬凱撒大帝用來對(duì)軍事情報(bào)進(jìn)行加密的算法,它采用了替換方法對(duì)信息中的每一個(gè)英文字符循環(huán)替換為字母表序列中該字符后面第三個(gè)字符,對(duì)應(yīng)關(guān)系如下:

原文:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

密文:D E F G H I J K L M N O P Q R S T U V W X Y Z A B C

原文字符 P,其密文字符 C 滿足如下條件:
C = ( P + 3 ) mod 26
解密方法反之,滿足:
**P = ( C - 3 ) mod 26

假設(shè)用戶可能使用的信息僅包括小寫字母 a~z,則該微實(shí)例對(duì)應(yīng)的加密代碼如下:

plaincode = input("請(qǐng)輸入原文:")
print("密文:")
for p in plaincode:
    if ord("a") <= ord(p) <= ord("z"):          # 判斷是否在 a ~ z 之間
        print(chr(ord("a") + (ord(p) - ord("a") + 3) % 26),end='')
    else:
        print(p, end=' ')

程序運(yùn)行結(jié)果如下:

請(qǐng)輸入原文:python is an excellent language
密文:
sbwkrq lv dq hafhoohqw odqjxdjh

以上就是關(guān)于“Python字符串操作方法怎么使用”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI