作者david8811 (Naruto)
看板Python
標題[問題] 反轉文字 程式哪裡錯了
時間Mon Dec 6 14:37:09 2010
def reverse(x):
y = " "
for c in x:
y = y+c
return y
print reverse("apple")
請問如果要把apple變成elppa的話程式哪裡錯了?
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.212.197
1F:→ uranusjr:請思考 y = y+c 的意思是什麼...我覺得你需要找個好教材 12/06 15:04
2F:→ david8811:我試過y = y+c[-1::] 指定他從後面一個字一個字取也不 12/06 15:09
3F:→ david8811:行 12/06 15:09
4F:→ sunrise0406:for c in range(len(x)-1,-1,-1): y+=x[c] 12/06 15:26
5F:→ cibs:不知道是不是貼上來時貼錯, return 的位置你也要記得修正 12/06 15:27
6F:→ david8811:感謝大家! 因為我第一次學程式 Orz...很多都看不懂 12/06 15:45
7F:→ uranusjr:for c in x 是從前面開始, 所以你要從後面開始附加 12/06 15:52
8F:→ uranusjr:所以用 y = c + y 就會反過來, 可以試著想想為什麼 12/06 15:53
9F:→ uranusjr:另外如果實際用不要傻傻的這個轉, x[::-1] 就搞定了... 12/06 15:53
10F:→ david8811:@@"原來只是反過來就可以了... 12/06 16:04
11F:→ sunrise0406:學到slice的[::]方法 ,感謝! 12/06 17:04
12F:推 hukhuk:推x[::-1] 這一招 12/06 19:48
13F:推 dyco:''.join([x[k-1:k] for k in range(len(x),0,-1)]) 12/06 20:48
14F:推 hukhuk:'apple'[::-1] 12/06 21:38
15F:→ david8811:0.0 原來我-1錯位子了... 12/06 22:33