【发布时间】:2016-01-06 04:56:07
【问题描述】:
我知道我可以只使用 reverse 函数来反转字符串,但是对于 Codecademy 作业,我试图在没有 reverse 或 [::-1] 的情况下反转字符串。在试图找出我的代码有什么问题时,我偶然发现了问题的可能解决方案,但在这一点上,我只想了解我的代码在做什么。
def reverse(text):
text2 = list(text)
backwards = []
for char in text2:
backwards.append(text2[-1])
del(text2[-1])
return "".join(backwards)
text = raw_input("Say something:\n")
print reverse(text)
当我测试这个时,输出总是反转字符串的后半部分。我不明白为什么for char in text2: 会被解释为for half_the_char in text2。我的代码怎么解释这种奇怪的?
【问题讨论】: