向后打印一个字符串

时间:2015-12-27 05:39:28

标签: python string

我正在尝试编写一段反转字符串的代码。到目前为止它可以工作,但字符串中的每个字符之间都有空格,并且在打印结果之前和之后都没有。我该怎么做才能解决这个问题?

def reverse(text):
    length = len(text)
    while length > 0:
        print text[length - 1],
        length -= 1

2 个答案:

答案 0 :(得分:1)

我没有看到"没有"问题,只是字符之间的空格。对于"无"问题,请确保您将函数传递给字符串而不是列表。如果你传给它一个字符串,那么nones来自其他地方。正如PM 2Ring建议的那样,请确保您没有尝试打印函数调用的结果,因为写入的函数不会返回任何内容。

这些空间是由于打印的方式,以及您一次打印一个字符的结果。更好的方法是反转字符串,然后在单个打印中打印结果。这可以非常简单地完成如下:

rev = text[::-1]

答案 1 :(得分:1)

我无法重现None问题。你在角色之间获得的空间不是问题,而是在python2中打印就像那样。但是,您可以通过代码中的简单更改来忽略空格。像这样:

def reverse(text):
    length = len(text)
    result=''
    while length > 0:
        result += text[length - 1]
        length -= 1
    print result

reverse("I love python!")

输出:

!nohtyp evol I