我被困在一个练习中,我只需要在一个函数中使用一个循环来反转随机字符串(for循环或while?)。使用循环在Python中反转字符串?
我不能在这里使用".join(reversed(string))
或string[::-1]
方法,所以它有点棘手。
我的代码看起来是这样的:
def reverse(text):
while len(text) > 0:
print text[(len(text)) - 1],
del(text[(len(text)) - 1]
我用,
打印出每一个字母文字在同一行!
我得到del(text[(len(text)) - 1]
任何建议无效的语法?
你试图扭转字符串或以相反的顺序打印字符?你的头衔暗示着前者,但你的代码似乎试图去做后者。如果你想扭转字符串 - 建立它,然后*返回*反向字符串。让调用代码打印它,如果需要的话。大多数函数不应该在其中打印。 –
您可以使用临时变量来构建反向字符串,而不是操纵原始字符串 –
'del'修改对象,但不能修改字符串,而必须创建新字符串。尝试用少一个字符创建一个新字符串:'text = text [: - 1]' – Duncan