[问题] 字串切割问题

楼主: 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