zoukankan      html  css  js  c++  java
  • Python数据类型-列表

    li = [ 'runoob', 786 , 2.23, 'john', 70.2 ] 
    格式:列表名 = [元素1,元素2,元素3] 
    例子:tinyli = [123, 'john'] 
    注意:当列表里只有一个值时要加个逗号,习惯:a=[1,]

    1、查

    print(li)  # 输出完整列表  == print li[:]
    print(li[0])  # 输出列表的第一个元素 运算:print(li[1-1]) = print(li[0])
    print(li[1:3])  # 输出第二个至第三个的元素
    print(li[2:])  # 输出从第三个开始至列表末尾的所有元素
    print(li[:3])  # 打印第一个到第三个元素
    print(tinyli * 2)  # 输出列表两次
    print(li + tinyli)  # 打印组合的列表
    print(li[:])  # 打印所有元素
    print(li[1:])  # 打印第二个到最后
    print(li[-1])  # 打印最后一个元素
    print(li[-2])  # 打印倒数第二个元素
    print(li[-2:])  # 打印倒数两个元素
    print(li[1:-1])  # 打印第二个元素到倒数第二个
    print(li[0:-1:2])  # 隔1个元素打印 方法1:
    print(li[::2])  # 方法2:
    
    print(li.index("john"))  # 打印元素值的位置 格式:列表名.index(元素值),如果存在多个 john,则只能取第一个 john
    print([li.index("john")])  # 取元素位置,li[li.index("john")]:根据元素位置打印元素值
    print(li[li.index("john")])
    
    print(li.count("john"))  # 打印列表中某个元素值重复的数量 格式:列表名.count(元素值)
    
    li.reverse()  # 把列表中的元素的位置翻转 格式:列表名.reverse();再打印
    print(li)
    
    li.sort()  # 列表中的元素进行排序,按符号,数字,大写,小写 格式:列表名.sort();再打印;倒序:sort(reverse=True)
    print(li)  # 注意,只能是相同的数据类型进行排序,列表里存在不同的数据类型,此方法会报错
    b = sorted(li)  # 方法2
    print(b)   # 同注意
    
    print('786' in li)  # 查找列表中是否存在指定元素值,注意数据类型 格式:元素值 in 列表名  # 返回布尔类型 true 或 false
    li10 = li * 10  # 重复列表 格式:新列表名 = 列表名1 * 次数
    print(li10)

    2、改

    li[0] = 'tom'  # 修改指定位置的元素值 格式:列表名[元素位置] = 新元素值
    li[1:3] = ['hjc1', 'hjc2']  # 同时修改多个元素值  格式:列表名[元素位置:元素位置]=['元素值','元素值']

    3、删

    方法1:要知道位置
    del li[3] # 删除指定位置的元素 格式:del 列表名[元素位置] 
    del li # 直接删除 li 的这个变量

    方法2:要知道元素值是什么,只能删一次,多次用循环
    li.remove("mayun") # 删除列表中指定元素值 格式:列表名.remove(元素值) 

    方法3:括号内不加任何索引,默认删除最后一个元素,加,指定删除,并返回删除的值
    lsit.pop() # 默认删除最后一个元素值 格式:列表名.pop() 

    li.clear() # 清空列表所有

    4、增

    li.insert(3,'111') # 指定位置插入一个新元素 格式:列表名.insert(位置,元素值)
    li.append('mayun') # 在最后添加一个元素 格式:列表名.append(元素值)
    li3 = li + li1 # 合并列表 格式:新列表名 = 列表名1 + 列表名2
    li.extend(li1) # 把一个列表合并到另一个列表 格式:列表名1.extend(列表名2),相当于多个 append 多次添加
    li = ['alex','hjc']
    print('333'.join(li)) # 拼接 结果:alex333hjc

    5、其他操作

    # count:统计某个元素在列表中出现的次数
    t = ['to', 'be', 'or', 'not', 'to', 'be']
    print(t.count('to'))
    # 2
    
    # extend:修改了被扩展的列表,而原始的连接操作(+)则不然,他会返回一个全新的列表
    a = ['a', 'b', 'c']
    b = ['1', '2', '3']
    a.extend(b)
    print(a)
    # ['a', 'b', 'c', '1', '2', '3']
    # a+b:两个列表合并成一个新的列表
    

    # 循环取列元素:
    li = ['电脑', '鼠标垫', 'U盘', '汽车', ]
    for i in range(len(li)):
        print(i, li[i])
    '''
    0 电脑
    1 鼠标垫
    2 U盘
    3 汽车
    '''
    
    # 另一种写法:
    for u in enumerate(li, start=0):  # 给每个元素额外添加一个数字 key:默认从0开始自增,可以设置 start 的默认值
        print(u)
    '''
    (0, '电脑')
    (1, '鼠标垫')
    (2, 'U盘')
    (3, '汽车')
    '''
  • 相关阅读:
    HDU 2844 Coins(多重背包)
    HDU 4540 威威猫系列故事——打地鼠(DP)
    Codeforces Round #236 (Div. 2)
    FZU 2140 Forever 0.5
    HDU 1171 Big Event in HDU(DP)
    HDU 1160 FatMouse's Speed(DP)
    ZOJ 3490 String Successor
    ZOJ 3609 Modular Inverse
    ZOJ 3603 Draw Something Cheat
    ZOJ 3705 Applications
  • 原文地址:https://www.cnblogs.com/tootooman/p/8954367.html
Copyright © 2011-2022 走看看