zoukankan      html  css  js  c++  java
  • 04 Day Python列表与元组

    元组:

    元组被称为只读列表,即数据可以被查询,但不能被修改,所以,字符串的切片操作同样适用于元组。例:(1,2,3)("a","b","c")!但是元组中的列表可以修改。

    #元组内容不可修改,如下:
    i = ('大雄','王晓明',['小红','小刚','花花'],'你好')
    i[0] = '哆啦A梦'
    print(i)
    
    报错:Traceback (most recent call last):
            File "G:/lod_boy_S9_Python/4Day/test.py", line 176, in <module>
            i[0] = '哆啦A梦'
            TypeError: 'tuple' object does not support item assignment
    
    
    #修改元组中列表里面的元素 可以成功
    i = ('大雄','王晓明',['小红','小刚','花花'],'你好')
    i[2][0] = '哆啦A梦'
    print(i)
    # 输出:('大雄', '王晓明', ['哆啦A梦', '小刚', '花花'], '你好')

    列表:

    增:

    #append 增加新数据到列表最后
    li = ['alex','wusir','egon','女神','taibai']
    li.append('lidongxu')
    print(li)
    #输出:['alex', 'wusir', 'egon', '女神', 'taibai', 'lidongxu']
    
    #insert 增加新数据到列表指定位置(插入)
    li = ['alex', 'wusir', 'egon', '女神', 'taibai', 'lidongxu']
    li.insert(2,'liuyi')
    print(li)
    #输出:['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu']
    
    #extend 迭代添加 数据会被分解到最小元素 例:'小明' 会被分解为 '小', '明'
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu']
    li.extend('小明')
    print(li)
    #输出结果:['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']

    删:

    #pop 有返回值
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    li.pop() #没有值 默认删除最后一个
    print(li)
    #输出:['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小']
    
    #按照索引删除
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    name = li.pop(0) #按照索引删除
    print(name,li)
    #输出:alex ['wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    
    #remove 按照元素删除 无返回值
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    li.remove('')
    print(li)
    
    #clear 清空列表
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    li.clear()
    print(li)
    
    #del删除列表 会报错
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    del.li
    print(li)
    
    #切片删除列表中某一部分
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    del li[0:3]
    print(li)
    #输出:['egon', '女神', 'taibai', 'lidongxu', '小', '明']

    改:

    #按照索引修改
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    li[0] = 'lidongxu' #按照索引修改
    print(li)
    #输出:['lidongxu', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    
    
    
    #会拆分到最小单元
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    li [0:2] = '你好啊'
    print(li)
    #输出:['你', '好', '啊', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    
    
    
    #完整替换切片部分
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    li [0:2] = ['1。2。3']
    print(li)
    #输出:['1。2。3', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']

    查:

    for循环
    #按照索引数循环
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    for i in li :
         print(li)
    #输出:
        # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
        # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
        # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
        # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
        # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
        # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
        # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
        # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
        # ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '小', '明']
    
    
    #按照索引数循环打印出切片内容
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    for i in li :
        print(li[0:2])
    # 输出:
    #     ['alex', 'wusir']
    #     ['alex', 'wusir']
    #     ['alex', 'wusir']
    #     ['alex', 'wusir']
    #     ['alex', 'wusir']
    #     ['alex', 'wusir']
    #     ['alex', 'wusir']
    #     ['alex', 'wusir']
    #     ['alex', 'wusir']
    
    
    len
    #打印列表长度
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    i = len(li)
    print(i)
    #输出:9
    
    
    count
    #某一元素或字符串出现的次数
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    i = li.count('alex')
    print(i)
    #输出:1 PS:列表中只能查引号中的元素。
    
    
    
    index
    #索引位置,,没有会报错。列表中只能用index
    li = ['alex', 'wusir', 'liuyi', 'egon', '女神', 'taibai', 'lidongxu', '', '']
    print(li.index('wusir'))
    # 输出:1
    
    sort
    #从小到大排序(升序)
    li = ['1', '3', '2', '6', '4', '5', '7', '9', '8']
    li.sort()
    print(li)
    # # 输出:['1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    #从大到小排序(降序)
    li = ['1', '3', '2', '6', '4', '5', '7', '9', '8']
    li.sort(reverse=True)
    print(li)
    # # 输出:['9', '8', '7', '6', '5', '4', '3', '2', '1']
    
    reverse
    #列表整体反转
    li = ['1', '3', '2', '6', '4', '5', '7', '9', '8']
    li.reverse()
    print(li)
    # # 输出:['8', '9', '7', '5', '4', '6', '2', '3', '1']
    列表的嵌套:
    #打印列表中小列表的元素
    li = ['alex', 'wusir', 'liuyi',  '女神', 'taibai', ['8','3','lidongxu','1'],'', '']
    print(li[5][2])
    # 输出:lidongxu
    
    #替换某个元素的首字母大写
    li = ['alex', 'wusir', 'liuyi',  '女神', 'taibai', ['8','3','lidongxu','1'],'', '']
    li [0]  = li[0].capitalize()
    print(li)
    # 输出:['Alex', 'wusir', 'liuyi', '女神', 'taibai', ['8', '3', 'lidongxu', '1'], '小', '明']
    
    
    
    其他操作:
    join
    #衔接每个元素 ‘中的符号自定义’
    s = ['lidongxu','yang']
    sum = '_'.join(s) #衔接每个元素 ‘中的符号自定义’
    print(sum)
    # 输出结果:lidongxu_yang
    
    rang
    只存数字的列表,同样顾头不顾尾
    for i in range(3,10) :
        print(i)
    #输出:3.....9
    
    
    for i in range(10) :
        print(i)
    #输出结果:0......9
    
    
    for i in range(0,10,4) :
        print(i)
    #输出:0 3 6 9 PS:如果步长为2 输出为:0 2 4 6 8  步长为4 输出为:0 4 8
    
    
    #反响
    for i in range(10,0,-4) :
        print(i)
    #输出:10 8 6 4 2 步长为-3 输出为:10 7 4 1  步长为4 输出为:10 6 2
    
    
    
     
     
  • 相关阅读:
    LR 场景设置
    win7 快捷键
    P1903 [国家集训队]数颜色 / 维护队列(莫队区间询问+单点修改)
    A
    P1494 [国家集训队]小Z的袜子(莫队)
    P2709 小B的询问(莫队入门)
    G
    #6285. 数列分块入门 9(区间的最小众数 离散化+数列分块)
    #6284. 数列分块入门 8(区间询问等于一个数 cc 的元素,并将这个区间的所有元素改为 c)
    #6283. 数列分块入门 7(区间乘法,区间加法,单点询问)
  • 原文地址:https://www.cnblogs.com/lidaxu/p/8066348.html
Copyright © 2011-2022 走看看