Python的字符串操作簡單實例
實例1:獲取星期字符串
程序讀入一個表示星期幾的數(shù)字(1~7),輸出對應(yīng)的星期字符串名稱。例如,輸入 3,返回“星期三”。
代碼如下:
weekstr = "星期一星期二星期三星期四星期五星期六星期日" weekid = eval(input("請輸入星期數(shù)字(1~7):")) pos = (weekid - 1) * 3 # 獲取對應(yīng)星期的起始位置 print(weekstr[pos: pos+3])
程序運行結(jié)果如下:
請輸入星期數(shù)字(1~7):6
星期六
題目通過在字符串中截取適當(dāng)子串實現(xiàn)星期名稱的查找。問題的關(guān)鍵在于找出子串的剪切位置。因為每個星期日期的縮寫都由 3 個字符組成,如果知道星期日期字符串的起始位置,就能很容易獲得縮寫子串。 通過下面語句,可以獲得從起始位置pos開始且長度為 3 的子串:
weekAbbr = weekstr[pos: pos+3]
使用字符串作為查找表的缺點是,所剪切的子字符串長度必須相同。如果各縮寫表示長度不同,還需要其他語句輔助。
實例2:獲取月份字符串
參考實例1,實現(xiàn)一個 “獲取月份字符串” 的程序,要求根據(jù)1~12的數(shù)字返回對應(yīng)月份的名稱。
思路和實例1差不多,但是因為 十一月 和 十二月 是 3 個字,所以我們增加了判斷語句。
代碼如下:
monthstr = "一月二月三月四月五月六月七月八月九月十月十一月十二月" monthid = eval(input("請輸入月份數(shù)字(1~12):")) if monthid > 0 and monthid <= 10: # 1月到 10 月的情況 pos = (monthid - 1) * 2 # 獲取對應(yīng)月份的起始位置 print(monthstr[pos: pos + 2]) elif monthid == 11: # 11 月的情況 pos = (monthid - 1) * 2 # 獲取對應(yīng)月份的起始位置 print(monthstr[pos: pos + 3]) elif monthid == 12: # 11 月的情況 pos = (monthid - 1) * 2 + 1 # 獲取對應(yīng)月份的起始位置 print(monthstr[pos: pos + 3]) else: print("輸入有誤!")
程序運行結(jié)果如下:
請輸入月份數(shù)字(1~12):6
六月 請輸入月份數(shù)字(1~12):11
十一月 請輸入月份數(shù)字(1~12):12
十二月 請輸入月份數(shù)字(1~12):13
輸入有誤!
實例3:愷撒密碼
設(shè)想在某些情況下給朋友傳遞字條信息,但又不希望傳遞中途被第三方看懂這些信息,因此需要對字條信息進行加密處理。傳統(tǒng)加密算法很多,這里介紹一種非常簡單的加密算法——凱撒密碼。 凱撒密碼是古羅馬凱撒大帝用來對軍事情報進行加密的算法,它采用了替換方法對信息中的每一個英文字符循環(huán)替換為字母表序列中該字符后面第三個字符,對應(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,則該微實例對應(yīng)的加密代碼如下:
plaincode = input("請輸入原文:") 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=' ')
程序運行結(jié)果如下:
請輸入原文:python is an excellent language
密文:
sbwkrq lv dq hafhoohqw odqjxdjh
到此這篇關(guān)于Python的字符串操作簡單實例的文章就介紹到這了,更多相關(guān)Python字符串操作內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python編程培訓(xùn) python培訓(xùn)靠譜嗎
現(xiàn)在大家都知道,比較火的編程語言就是python了,很多朋友都想學(xué)習(xí)python編程,想上一個好的python培訓(xùn)班,小編今天給大家全面分析一下關(guān)于python編程培訓(xùn)方面的問題,希望能給你答疑解惑。2018-01-01Python獲取時間范圍內(nèi)日期列表和周列表的函數(shù)
這篇文章主要介紹了Python獲取時間范圍內(nèi)日期列表和周列表的函數(shù),文中給大家提到了python獲取日期的周數(shù) ,需要的朋友可以參考下2019-08-08pymongo為mongodb數(shù)據(jù)庫添加索引的方法
這篇文章主要介紹了pymongo為mongodb數(shù)據(jù)庫添加索引的方法,涉及Python操作mongodb數(shù)據(jù)庫的相關(guān)技巧,非常簡單實用,需要的朋友可以參考下2015-05-05Python寫一個字符串?dāng)?shù)字后綴部分的遞增函數(shù)
這篇文章主要介紹了Python寫一個字符串?dāng)?shù)字后綴部分的遞增函數(shù),寫函數(shù)之前需要Python處理重名字符串,添加或遞增數(shù)字字符串后綴,下面具體過程,需要的小伙伴可以參考一下2022-03-03