Python隨筆28:Python基礎(chǔ)編程練習(xí)題21~22

:本文所有代碼均經(jīng)過(guò)Python 3.7實(shí)際運(yùn)行檢驗(yàn),保證其嚴(yán)謹(jǐn)性。

Python基礎(chǔ)練習(xí)題21:倒序輸出子字符串

s = 'abc12345',只能通過(guò)切片方法,如何得到新的字符串'54321'?

解答:這題考量的是字符串的切片方法的應(yīng)用,關(guān)鍵在于分析對(duì)應(yīng)的字符串索引(index)。而跟索引相關(guān)的一個(gè)函數(shù)enumerate就能排上用場(chǎng)了。

s = 'abc12345'
for i in enumerate(s):
    print(i)
(0, 'a')
(1, 'b')
(2, 'c')
(3, '1')
(4, '2')
(5, '3')
(6, '4')
(7, '5')

可以直觀地看到,如要倒序,要從'c'那里切5片,而s.index('c') = 2,所以

s = 'abc12345'
s[:2:-1]
Out[66]: '54321'
Python基礎(chǔ)練習(xí)題22:字符串循環(huán)左移

給定一個(gè)字符串S,要求把S的前k個(gè)字符移動(dòng)到S的尾部,如把字符串“abcdef”前面的2個(gè)字符‘a(chǎn)’、‘b’移動(dòng)到字符串的尾部,得到新字符串“cdefab”,稱作字符串循環(huán)左移k位。輸入一個(gè)字符串和一個(gè)非負(fù)整數(shù)N,要求將字符串循環(huán)左移N次。

輸入格式:

輸入在第1行中給出一個(gè)不超過(guò)100個(gè)字符長(zhǎng)度的、以回車結(jié)束的非空字符串;第2行給出非負(fù)整數(shù)N。

輸出格式:

在一行中輸出循環(huán)左移N次后的字符串。

輸入樣例:

abcd

2

輸出樣例:

cdab

解答:本題考量的一樣是字符串切片方法的使用。雖然使用for in遍歷并拼接也可以解決問(wèn)題,但切片終究才是最簡(jiǎn)潔、最直接的解決之道。

s = str(input())
n = int(input())
s = s[n::] + s[:n:]
print(s)

To be continued.

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 在C語(yǔ)言中,五種基本數(shù)據(jù)類型存儲(chǔ)空間長(zhǎng)度的排列順序是: A)char B)char=int<=float C)ch...
    夏天再來(lái)閱讀 4,021評(píng)論 0 2
  • 本節(jié)要介紹的是Python里面常用的幾種數(shù)據(jù)結(jié)構(gòu)。通常情況下,聲明一個(gè)變量只保存一個(gè)值是遠(yuǎn)遠(yuǎn)不夠的,我們需要將一組...
    小黑y99閱讀 65,596評(píng)論 0 9
  • 2019.10.6 "叮,叮" 沉寂了一個(gè)假期的社群在即將開學(xué)的日子里終于熱鬧了起來(lái),小佳在宿舍過(guò)了孤獨(dú)的六天之...
    何日向光何日向陽(yáng)閱讀 125評(píng)論 0 1
  • 貓咪名字:夜宵 男 問(wèn)題:1.他的靈魂是我很重要的人么? 2.他來(lái)我身邊有什么任何使命或者任務(wù)么? 3.他每天叫是...
    茜妲閱讀 477評(píng)論 0 4
  • 今天12點(diǎn)爺爺奶奶就到我家來(lái)剪頭發(fā),因?yàn)槲覌寢屖抢戆l(fā)師,因?yàn)槲覡敔斣谶@剪不用花一分錢就行,所以爺爺讓我媽媽給她剪頭...
    褚佳琦閱讀 793評(píng)論 0 0

友情鏈接更多精彩內(nèi)容