[問題] 字串切割問題

作者: LessonWang (橘白Cat)   2017-06-01 12:31:53
如題 小的剛學python沒幾天
學python的原因是要用來解online judge
剛好學到字串
有一個問題實在搞不太懂
假設s是個字串
為何s[::-1]是這個字串的反轉字串
其原理是什麼啊
作者: ides13 (juso)   2017-06-01 12:42:00
slice[start:end:step],頭尾空白表不指定,step是-1。s[::-1]表示從尾巴執行到開始,每步驟是向後1步。http://tinyurl.com/ln38jue
作者: Yshuan (倚絃)   2017-06-01 14:35:00
因為python貼心的會將負數N的index提取 當作倒數第N個的我s[::-1] 我是想像成 for (i=0;abs(i)<len(s);--i) 在跑
作者: vi000246 (Vi)   2017-06-01 16:37:00
我也很討厭python的slice語法 都要死背
作者: ides13 (juso)   2017-06-01 17:17:00
在start和end的負號是指倒數第幾個。在step負號指反向。
作者: LessonWang (橘白Cat)   2017-06-01 17:48:00
感謝各位的解釋 我已經了解了 有了slice蠻方便的
作者: os653   2017-06-01 20:35:00
不用slice語法的話,程式會多很多行,讀起來也不直覺
作者: uranusjr (←這人是超級笨蛋)   2017-06-02 11:32:00
反轉字串 str(reversed(s)) 一行不就搞定了嗎
作者: vi000246 (Vi)   2017-06-02 16:01:00
刷leetcode還是不要用現成的函數 手動刻一個吧
作者: jrshiang0423 (買不起達人)   2017-06-11 04:29:00
不一定比手刻快,除非寫的很糟糕

Links booklink

Contact Us: admin [ a t ] ucptt.com