首页常见问题正文

Python中如何反序的迭代一个序列?

更新时间:2023-02-24 来源:黑马程序员 浏览量:

IT培训班

  Python中我们知道常见序列有字符串、元组和列表。进行序列反序,我们可以利用内置函数reversed()或range()来实现,也可以用扩展切片[::-1]的形式实现。假设一个序列是列表,我们还可以使用列表自带的reverse()方法。

  1)reversd()是Python的内置函数,它的参数可以是字符串、列表或者元组等序列。

  2)利用range()方法生成序列的反序索引,然后从最后的元素遍历到开始的元素,就可以反序输出序列的元素。range(start,stop[,step])方法的参数说明:

  ·start:从start开始计数。默认是从0开始。

  ·end:到end计数结束,但不包括end。

  ·step:步长,默认为1。

  3)seq[::-1]扩展切片方法是利用了序列的切片操作,切片是序列的高级特性。seq[::-1]表示反向获取seq中的所有元素,并且每次取一个。-1表示从序列的最后一个元素反向遍历获取。

  4)如果是列表(list)序列,那么还可以直接用列表的reverse()方法。

  示例代码如下:

seq="Hello world"

#reversed()内置函数方法
for s in reversed(seq):
    print(s.end=")
# 输出换行
print()

#range()函数方法
for i in range(len(seq)-1,-1,-1):
       s=seq[i]
       print(s,end=")
# 输出换行
print()

#[::1]扩展切片方法
for s in seq[::-1]:
      print(s,end=")
# 输出换行
print()

#list自带的reverse()方法
seq=[1,2,3,4,5,6]
seq.reverse()
for s in seq:
      print(s,end=")
# 输出换行
print()

  代码运行结果为

dlrow olleH
dlrow olleH
dlrow olleH
654321


分享到:
在线咨询 我要报名
和我们在线交谈!