reversed()作为python的内置函数,用来实现字符串的逆序()
但如果按照以下代码的做法,它会返回类似以下的结果
str1 = 'I love python'
print(reversed(str1))
# <reversed object at 0x000001740E5FF7C0>
<reversed object at 0x000001740E5FF7C0>
你它告诉你这是一个list_reverseiterator
对象,以及其在内存中的地址
正确的做法是
str1 = 'I love python'
print(' '.join(reversed(str1.split())))
# python love I
这段代码的逻辑如下:
str1
是一个包含字符串"I love python"的变量。str1.split()
将字符串按空格分割成一个列表,得到['I', 'love', 'python']
。reversed(str1.split())
使用reversed()
函数将列表逆序排列,返回一个迭代器对象。' '.join(reversed(str1.split()))
将逆序排列后的列表中的元素用空格连接起来,生成一个新的字符串。- 最后,这个新的字符串被打印出来。
或
str1 = 'I love python'
print(list(reversed(str1.split())))
# ['python', 'love', 'I']
list函数 获取逆序后的列表,将reversed()
函数的结果转换为一个新的列表