Python的字符串操作簡(jiǎn)單實(shí)例
實(shí)例1:獲取星期字符串
程序讀入一個(gè)表示星期幾的數(shù)字(1~7),輸出對(duì)應(yīng)的星期字符串名稱(chē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
星期六
題目通過(guò)在字符串中截取適當(dāng)子串實(shí)現(xiàn)星期名稱(chēng)的查找。問(wèn)題的關(guān)鍵在于找出子串的剪切位置。因?yàn)槊總€(gè)星期日期的縮寫(xiě)都由 3 個(gè)字符組成,如果知道星期日期字符串的起始位置,就能很容易獲得縮寫(xiě)子串。 通過(guò)下面語(yǔ)句,可以獲得從起始位置pos開(kāi)始且長(zhǎng)度為 3 的子串:
weekAbbr = weekstr[pos: pos+3]
使用字符串作為查找表的缺點(diǎn)是,所剪切的子字符串長(zhǎng)度必須相同。如果各縮寫(xiě)表示長(zhǎng)度不同,還需要其他語(yǔ)句輔助。
實(shí)例2:獲取月份字符串
參考實(shí)例1,實(shí)現(xiàn)一個(gè) “獲取月份字符串” 的程序,要求根據(jù)1~12的數(shù)字返回對(duì)應(yīng)月份的名稱(chēng)。
思路和實(shí)例1差不多,但是因?yàn)?十一月 和 十二月 是 3 個(gè)字,所以我們?cè)黾恿伺袛嗾Z(yǔ)句。
代碼如下:
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)單的加密算法——凱撒密碼。 凱撒密碼是古羅馬凱撒大帝用來(lái)對(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 滿(mǎn)足如下條件:
C = ( P + 3 ) mod 26
解密方法反之,滿(mǎn)足:
**P = ( C - 3 ) mod 26
假設(shè)用戶(hù)可能使用的信息僅包括小寫(xiě)字母 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的字符串操作簡(jiǎn)單實(shí)例的文章就介紹到這了,更多相關(guān)Python字符串操作內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
基于Python的一個(gè)自動(dòng)錄入表格的小程序
這篇文章主要介紹了基于Python的一個(gè)自動(dòng)錄入表格的小程序,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08使用FFmpeg來(lái)無(wú)損壓縮視頻文件的操作方法
FFmpeg是業(yè)內(nèi)有名的開(kāi)源圖像視頻處理程序,在許多視頻剪輯軟件、圖像處理軟件中,都使用的FFmpeg,還有比如OBS這樣的導(dǎo)播軟件里面也使用了FFmpeg,FFmpeg的功能十分強(qiáng)大,遠(yuǎn)不止視頻壓縮的功能,本文介紹使用FFmpeg來(lái)無(wú)損壓縮視頻文件的操作方法,感興趣的朋友一起看看吧2023-12-12教你pycharm快速添加遠(yuǎn)程環(huán)境的詳細(xì)過(guò)程
今天通過(guò)本文給大家分享pycharm快速添加遠(yuǎn)程環(huán)境的過(guò)程,通過(guò)在setting中選擇設(shè)置符號(hào)add,具體詳細(xì)過(guò)程跟隨小編一起通過(guò)本文學(xué)習(xí)下吧2021-07-07python編程培訓(xùn) python培訓(xùn)靠譜嗎
現(xiàn)在大家都知道,比較火的編程語(yǔ)言就是python了,很多朋友都想學(xué)習(xí)python編程,想上一個(gè)好的python培訓(xùn)班,小編今天給大家全面分析一下關(guān)于python編程培訓(xùn)方面的問(wèn)題,希望能給你答疑解惑。2018-01-01淺析python 定時(shí)拆分備份 nginx 日志的方法
本文給大家分享python 定時(shí)拆分備份 nginx 日志的方法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-04-04Python獲取時(shí)間范圍內(nèi)日期列表和周列表的函數(shù)
這篇文章主要介紹了Python獲取時(shí)間范圍內(nèi)日期列表和周列表的函數(shù),文中給大家提到了python獲取日期的周數(shù) ,需要的朋友可以參考下2019-08-08pymongo為mongodb數(shù)據(jù)庫(kù)添加索引的方法
這篇文章主要介紹了pymongo為mongodb數(shù)據(jù)庫(kù)添加索引的方法,涉及Python操作mongodb數(shù)據(jù)庫(kù)的相關(guān)技巧,非常簡(jiǎn)單實(shí)用,需要的朋友可以參考下2015-05-05Python寫(xiě)一個(gè)字符串?dāng)?shù)字后綴部分的遞增函數(shù)
這篇文章主要介紹了Python寫(xiě)一個(gè)字符串?dāng)?shù)字后綴部分的遞增函數(shù),寫(xiě)函數(shù)之前需要Python處理重名字符串,添加或遞增數(shù)字字符串后綴,下面具體過(guò)程,需要的小伙伴可以參考一下2022-03-03python+opencv實(shí)現(xiàn)閾值分割
這篇文章主要為大家詳細(xì)介紹了python+opencv實(shí)現(xiàn)閾值分割的相關(guān)代碼,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-12-12