大号在练葵花宝典 发表于 2024-6-27 14:57:24

Python可迭代序列反转

1.字符串反转

示例:s = "hello"
方法一:使用切片

def reversed_str(s):
    return s[::-1]方法二:使用reversed

# 字符串 -> 反转迭代器 -> 列表 -> 反转后的字符串
def reversed_str(s):
    return "".join(list(reversed(s)))        # 实际编码不要这样写,不容易理解方法三:使用reverse

def reversed_str(s):
    str_list = list(s)
    # 注意list.reverse()和list.sort()一样,都是就地操作没有返回值
    str_list.reverse()       
    return "".join(str_list)方法四:使用reduce

def reversed_str(s):
    from functools import reduce
    # reduce的第一个参数是函数,第二个参数是序列
    return reduce(lambda x, y: y+x, s)2.列表反转

示例:lst =
方法一:使用切片

def reversed_list(lst):
    return lst[::-1]方法二:使用reversed

def reversed_list(lst):
    return list(reversed(lst))方法三:使用reverse

def reversed_list(lst):
    lst.reverse()        # 就地反转
    return lst方法四:使用while循环和pop

def reversed_list(lst):
    reversed_lst = []
    while len(lst) > 0:
      reversed_lst.append(lst.pop())
        return reversed_lst增补:元组的反转与列表类似,可以使用方法一和方法二,方法三和方法四需要稍加修改,这里就不赘述了

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: Python可迭代序列反转