作者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