乐趣区

关于python:Python基础数据类型列表

一、定义

1、列表由一系列按特定顺序排列的元素组成;
2、用方括号 [] 示意列表,并用逗号分隔其中的元素。

二、属性

1、有序汇合;
2、列表是可批改的。

三、操作

1、拜访列表元素

  1. 索引
    要拜访列表元素,可指出列表名称,再指出元素的索引,并将其放在方括号内

    # 申请获取列表元素时,python 只返回该元素,不包含方括号和引号
    body = ['head','eye','ear','mouth']
    print(body[0].title())
    print(body[3])
  2. 拜访列表最初一个元素
    不晓得列表长度时拜访最初的元素,可将索引指定为 -1,索引 - 2 返回倒数第二个列表元素,以此类推

    body = ['head','eye','ear','mouth']
    print(body[-1])
  3. index —— 在列表中查找第一次呈现的索引

    colors = ['red','pink','yellow']
    print(colors.index('pink'))

2、在列表中增加元素

  1. append() —— 在列表开端增加元素

    body = ['head','eye','ear','mouth']
    body.append('face')
    print(body)
  2. insert() —— 在列表中插入元素
    a、在列表任何地位增加新元素,须要指定新元素的索引和值,此操作会将列表中既有的每个元素都右移一个地位;
    b、办法 insert 用于将一个对象插入列表

    body = ['head','eye','ear','mouth']
    body.insert(0,'face')
    print(body)
  3. extend() —— 同时将多个值插入到列表开端
    可将这些值组成的序列作为参数提供给办法 extend。换言之,可应用一个列表来裁减另一个列表

    a = [1,2,3]
    b = [4,5,6]
    a.extend(b)
    print(a)

3、从列表中删除元素

  1. del
    a、若晓得要删除元素在列表中的地位,能够应用 del 语句;
    b、应用 del 语句删除后,之后无奈再拜访该元素

    body = ['head','eye','ear','mouth']
    del body[3]
    print(body)
  2. pop()
    a、办法 pop 从列表中删除一个元素,并返回这一元素;
    b、pop 是惟一既批改列表又返回一个非 None 值的列表办法
    c、pop() 办法默认删除列表开端的元素,并且还能持续应用该元素

    body = ['head','eye','ear','mouth']
    popped_body = body.pop()
    print(body)
    print(popped_body)

    d、弹出列表中任何地位处的元素 – 须要晓得该元素的索引

    body = ['head','eye','ear','mouth']
    MyLove = body.pop(0)
    print(MyLove.title())
  3. remove()
    a、只晓得要删除元素的值,不晓得值所处的地位,应用 remove();
    b、remove()从列表中删除元素时,也能够持续应用该元素的值;
    c、不同于 pop,remove 就地批改列表,但不返回任何值;
    d、remove()办法只删除第一个指定的值,如果要删除的值在列表中呈现屡次,就须要应用循环来判断是否删除了所有这样的值

    body = ['head','eye','ear','mouth']
    body.remove('ear')
    print(body)
  4. clear()
    就地状况列表内容,返回一个空列表

    body = ['head','eye','ear','mouth']
    body.clear()
    print(body)

4、批改列表元素

# 能够批改任一列表元素的值,须要指定列表名、要批改元素的索引、再指定该元素的值
body = ['head','eye','ear','mouth']
body[2] = 'face'
print(body)

5、排序

  1. sort() —— 对列表永久性排序应用 sort()办法
    办法 sort 用于对列表就地排序,即对原来的列表进行批改,使其元素按顺序排列,而不是返回排序后的列表的正本
    a)依照字母程序排序

    tool = ['ppt','excel','csv','word']
    tool.sort()
    print(tool)

    b)依照与字母程序相同的顺序排列列表元素,只需向 sort()办法传递参数 reverse=True

    tool = ['ppt','excel','csv','word']
    tool.sort(reverse=True)
    print(tool)
  2. sorted()
    sorted()能够按特定程序显示列表元素,但不影响它们在列表中的元素排列程序

    tool = ['ppt','excel','csv','word']
    print(sorted(tool))
    print(tool)
  3. reverse()
    a、办法 reverse 按相同的顺序排列列表中的元素;
    b、永久性批改列表元素的排列程序,但随时能够复原到原来的排序,只需再次调用 reverse()

    a = [1,2,3]
    print(a.reverse())

6、切片[:]
1)如没有指定第一个索引,将主动从列表结尾开始提取;
2)要让列表终止于列表开端,相似;
3)正数索引能够输入列表开端的任何切片

colors = ['red','yellow','white','green','pink']
print(colors[0:3])
print(colors[1:4])
print(colors[:4])
print(colors[2:])
print(colors[-3:])

7、复制列表

  1. 切片 [:]
    可创立一个蕴含整个列表的切片[:],即复制整个列表

    my_color = ['red','yellow','white','green','pink']
    your_color = my_color[:]
    print(my_color)
    print(your_color)
  2. copy

    a = [1,2,3]
    b = a.copy()
    b[1]=4
    print(a)
  3. list()

    a = [1,2,3]
    print(list(a))

8、遍历列表——for 循环
a、for 循环中,每行缩进的代码都是循环的一部分,且将针对列表中的每个值都执行一次;
b、for 循环后,没有缩进的代码都只执行一次,而不会反复执行

colors = ['red','yellow','white']
for color in colors:
    print(color.title()+ ', is beautiful')
    print('I love'+' '+color.title())

9、其余列表办法

  1. count()——计数
    办法 count 计算指定的元素在列表中呈现了多少次

    colors = ['red','pink','yellow']
    print(colors.count('red'))
  2. len()——确定列表长度

    tool = ['ppt','excel','csv','word']
    print(len(tool))
  3. range()——创立数字列表
    a、range() 函数

    # 下例 range()只打印 1~4,从指定是第一个值开始数,并在达到指定的第二个值后进行,输入不蕴含第二个值
    for value in range(1,5):
     print(value)

    b、应用 range()创立数字列表
    1)要创立数字列表,可应用函数 list() 将 range()的后果间接转换成列表;
    2)如果将 range()作为 list()的参数,输入将作为一个数字列表;

    numbers = list(range(1,6))
    print(numbers)

    3)应用 range()时,还能够指定步长

    numbers = list(range(2,11,2))
    print(numbers)

    4)应用 range()简直能创立任何须要的数字集

    # 创立一个列表,其中蕴含 10 个整数(即 1~10)的平方
    squares = []
    for value in range(1,11):
     squares.append(value**2)
    print(squares)
  4. max()

    # 找出数字列表的最大值
    digits = [1,2,3,4,5]
    print(max(digits))
  5. sum()

    # 找出数字列表的总和
    digits = [1,2,3,4,5]
    print(sum(digits))
  6. list()——将序列转化为列表
退出移动版