• 列表 元组 range


    1.列表

    定义

    列表--list--容器

    有序,可变,支持索引

    列表:存储数据类型很多,字符串,数字, 布尔值,列表,集合,元祖,字典.

    定义一个列表:

    lst = ["dsb",123,True,"黑哥"]    # 用逗号分隔的是一个元素
    
    获取对象的内存地址(id)
    print(lst[0])        # dsb
    print(id(lst[0]))    # 2354942210432 
    
    lst[0] = "dsb"
    print(lst)      # ['dsb', 123, True, '黑哥']
    
    s = "alex"      # 字符串是不可变数据
    s = "wusir" 
    s[0] = "b"
    print(s)
    
    

    列表的增,删,改,查

    增加

    lst = ["dsb",123,True,"黑哥"]
    
    lst.append("大煎饼")   # 追加(在列表的最后位置追加一个内容)
    print(lst)            # ["dsb",123,True,"黑哥","大煎饼"]
    
    lst.insert(2,"wusir") # 插入  以后尽量不要使用(当数据量比较大的时候会影                         响效率)                
    print(lst)           # ["dsb",123,"wusir",True,"黑哥"]
    
    lst.extend("可迭代的内容")  #迭代添加
    print(lst)           # ['dsb', 123, True, '黑哥', '可', '迭', '代',                        '的', '内', '容']
    

    删除

    lst = ["dsb",123,True,"黑哥"]
    
    lst.pop()     # 弹--默认删除最后一个
    print(lst)    # ['dsb', 123, True]
    
    lst.pop(2)    # 通过指定索引进行删除
    print(lst)    # ["dsb",123,"黑哥"]
    #通过pop删除,有返回值返回的是被删除的元素
    
    #lst = ["dsb",123,"dsb",True,"黑哥"]
    lst.remove("dsb")  # 移除 -- 通过元素名字进行删除
    print(lst)         # [123,"dsb",True,"黑哥"]
     
    del lst[0]         # 通过索引删除
    print(lst)         # [123,True,"黑哥"]
    
    del lst[0:3]       # 通过切片删除
    print(lst)         # ["黑哥"]
    
    del lst[0:3:2]     # 通过步长删除
    print(lst)         # [123, '黑哥']
    
    lst.clear()        # 清空
    print(lst)         # []
    
    

    lst = [123,"dsb",True,"黑哥"]
    
    lst[1] = "123"          # 通过索引改变
    print(lst)              # [123, '123', True, '黑哥']
    
    lst[1:2] = "12345"      # 通过切片改变,且此方法改变结果为迭代方式
    print(lst)				# [123, '1', '2', '3', '4', '5', True, '黑                           哥']                   
    
    lst[1:4] = 12,13,14,15  # 通过切片改变,但此方法不迭代
    print(lst)              # [123, 12, 13, 14, 15]
    # 切片改变列表,元素可以超出切片的位数
    
    lst[1:4:2] = "12"/1,2   # 通过步长改变,步长不为1的必须一一对应,多一                             个也不行,少一个也不行
    print(lst)              # [123, '1', True, '2']
    

    for 循环
    
    lst = ["dsb",123,"dsb",True,"黑哥"]
    for i in lst:
        print(i)            # dsb
                              123
                              dsb
                              True
                              黑哥
    

    列表的嵌套

    lst = [1,"alex","春生","小东北","渣弟",["大黑哥",["常鑫",["自行车"],"大煎饼","掉井盖","三金"],"冯强","海峰",["太白金星","女神","吴超",["肖锋"]]]]
    
    用索引的方式找到"自行车"
    print(lst[-1][1][1][0])       # "自行车"
    
    a = lst[-1][-1][-2]
    print(a)                      # 吴超
    
    # 不管什么类型,进行切片的时候获取到的都是原数据类型
    # 取值通过索引进行取值,一层一层的进行查找
    

    2.元组

    定义

    元组 -- tuple

    有序,不可变,支持索引

    只能索引查看和for查看,不能进行增删改

    元组用于存储一些比较重要的信息

    元组在配置文件中会使用

    元组就是不可变的列表

    定义一个元组:

    tu = (1,"alex",True,"大黑哥",[1,2,3])
    lst = [1,"alex",True,"大黑哥",[1,2,3]]
    print(tu)            # (1, 'alex', True, '大黑哥', [1, 2, 3])
    
    tu = (1,"alex",True,"大黑哥",[1,2,3])
    print(tu[0:6])       # (1, 'alex', True, '大黑哥', [1, 2, 3])
    
    for 循环
    for i in tu:
        print(i)         # 1
                           alex
          				   True
    					   大黑哥
    				       [1, 2, 3]
    

    3.range

    定义

    range -- 范围

    print(list(range(0,10)))      # 顾头不顾尾
    

    python2 和 python3 中的区别

    Python3 中的 range 是一个可迭代对象,写的是怎样打印的时候就是怎样

    Python2 中的 range 返回的是一个列表

    range的使用

    print(list(range(0,10,1)))     # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
                                   # 步长不写得时候默认为1  [0:10:1]
    print(list(range(10,-2,-1)))   # [10, 9, 8, 7, 6, 5, 4, 3, 2, 1,                                    0, -1]
                                   # 步长不写得时候默认为1  [10:-2:-1]
    print(list(range(10)))         # 步长不写得时候默认为1  [:10]
    

    使用for循环和range

    打印 100 - 1
    for i in range (100,0,-1):
        print(i)
    
    打印 1 - 100的所有奇数
    for i in range(1,101,2):
        print(i)
        
    打印 1 - 100的所有偶数
    for i in range(0,101,2):
        print(i)
        
    打印 1 - 100的所有被6整除的数
    for i in range(0,101,6):
        print(i)
        
    让用户输入姓名,并在第三次输入后停止输入,打印出所有输入的名字.
    
    使用 while 循环
    
    lst = []
    flage = True
    while flage:
        name = input("请输姓名:")  # 请输姓名:agag
        lst.append(name)          # 请输姓名:garag
        if len(lst) == 3:         # 请输姓名:garg
            flage = False         # ['agag', 'garag', 'garg']
    print(lst)  
    
    使用 for 循环和range
    
    lst = []
    for i in range(3):
        lst.append(input("请输入姓名:"))
    print(lst)
    # 请输入姓名:sssht
    # 请输入姓名:shtst
    # 请输入姓名:hst
    # ['sssht', 'shtst', 'hst']
    
  • 相关阅读:
    北京初“探”,还是初“谈”
    hadoop集群安装(多机,非伪集群)
    iOS8下注冊push方式变更
    Linux文件编辑命令具体整理
    HDU 1260
    二叉树遍历(前序、中序、后序、层次、深度优先、广度优先遍历)
    关于Linux静态库和动态库的分析
    JavaScript特效之前进,后退(返回上一级)
    具体解释Hibernate中的事务
    iOS开发
  • 原文地址:https://www.cnblogs.com/beichen123/p/11158594.html
Copyright © 2020-2023  润新知