在Python中加入函数

时间:2013-01-29 18:07:49

标签: python

我正在编写反转字符串的代码,例如好的---> DOOG没有使用reverse()函数。我快到了......

a = "hello"

for i in range(1,len(a)+1): 

    print a[-i], 

当我使用join函数完成代码时,它无法正常工作。有什么想法吗?使我抓狂。

a = "hello"

for i in range(1,len(a)+1): 

    print ""join.a([-i],) 

3 个答案:

答案 0 :(得分:3)

您可以在一行中反转字符串,如下所示:

a[::-1]

切片的工作方式与[start:stop:step]类似。因此,当您使用-1作为step时,它会反向打印字符串。

>>> a = "hello"
>>> a[::-1]
'olleh'

答案 1 :(得分:2)

你可以这样做:

''.join(a[-i] for i in range(1,len(a)+1))

如果可迭代项目有多个要实际连接在一起的项目,那么当join确实最佳时,您将只有一个项目传递给join的可迭代对象。这里我传递一个生成器表达式。

但实际上,反转字符串的最简单,最有效的方法是:

a[::-1]

答案 2 :(得分:1)

我会选择s[::-1]但是,如果我必须写一个循环,那么:

for i in range(len(s) - 1, -1, -1):
    print s[i]