zoukankan      html  css  js  c++  java
  • python中可迭代对象反转

    1、字符串反转

    >>> a = "839574"
    >>> reversed(a)
    <reversed object at 0x00000215CACA0D60>
    >>> for i in reversed(a):   ## reversed反转为迭代器对象
        print(i,end = ";")
    
        
    4;7;5;9;3;8;
    >>> a
    '839574'
    >>> a.reverse()   ## 字符串不能都就地反转
    Traceback (most recent call last):
      File "<pyshell#381>", line 1, in <module>
        a.reverse()
    AttributeError: 'str' object has no attribute 'reverse'
    >>> b = a[::-1]   ## 利用分片可以实现反转
    >>> b
    '475938'

    2、列表反转

    >>> a = [8,3,7,9,2,5]
    >>> reversed(a)
    <list_reverseiterator object at 0x000001EE1E580D60>
    >>> for i in reversed(a):   ## reversed返回迭代器对象
        print(i,end = ":")
    
        
    5:2:9:7:3:8:
    >>> a
    [8, 3, 7, 9, 2, 5]
    >>> a.reverse()  ## reverse实现就地反转
    >>> a
    [5, 2, 9, 7, 3, 8]
    >>> b = a[::-1]   ## 利用分片进行反转
    >>> b
    [8, 3, 7, 9, 2, 5]

    3、元组反转

    >>> a = (5,9,4,8,3,7)
    >>> reversed(a)
    <reversed object at 0x0000021508370D30>
    >>> for i in reversed(a):   ## reversed返回迭代器对象
        print(i,end = ",")
    
        
    7,3,8,4,9,5,
    >>> a.reverse()   ## 元组不能够实现就地反转
    Traceback (most recent call last):
      File "<pyshell#408>", line 1, in <module>
        a.reverse()
    AttributeError: 'tuple' object has no attribute 'reverse'
    >>> a
    (5, 9, 4, 8, 3, 7)
    >>> a[::-1]   ## 利用分片进行反转
  • 相关阅读:
    诸侯安置
    可可西里
    直线交点
    切割多边形
    ACM挑战程序设计竞赛1.1抽签
    朝鲜战争:轰炸大小和岛
    星际争霸II 战斗问题
    乒乓球
    瑞士轮
    NOIP 2010 普及组解题报告
  • 原文地址:https://www.cnblogs.com/liujiaxin2018/p/14447610.html
Copyright © 2011-2022 走看看