python学习记录——列表

目录

列表

访问列表元素

修改列表元素

在列表中添加元素

从列表中删除元素

组织列表

sort()对列表永久排序:

sorted()对列表临时排序:

reverse()倒着打印列表:

len()确定列表长度:

创建数值列表

range函数

操作数值列表相关的其它函数

列表解析

使用列表的部分元素

切片 

for 语句


列表

列表是由一系列按特定顺序排列的元素组成,可以包含字母、数字。

  • 访问列表元素

可以直接通过数组下标进行访问。

访问最后一个列表元素可以使用fruits[-1],访问倒数第二个元素可以使用fruits[-2],以此力推可以访问之前的元素。

    fruits = ['apple', 'orange', 'banana']
    print(fruits[0]) # 首元素
    print(fruits[1]) # 第2个元素,元素下标从0开始
    print(fruits[-1]) # 打印最后一个元素
    print(fruits[-2]) # 打印倒数第2个元素
#运行结果
apple
orange
banana
orange
  • 修改列表元素

可以直接通过数组下标进行重新赋值。

    fruits = ['apple', 'orange', 'banana']    
    #修改列表元素的值
    fruits[0] = 'pear' # 修改下标0元素值为pear
    print(fruits)
#运行结果
['pear', 'orange', 'banana']
  • 在列表中添加元素

使用append方法添加:只能在列表末尾添加元素。

使用Insert方法添加:可以在列表中任意指定位置添加元素,位置之后的元素顺序右移一个位置。

    fruits = ['apple', 'orange', 'banana']
    #在列表末尾添加元素
    fruits.append('peach') # 在列表末尾添加元素peach
    print(fruits)
    #在列表中添加元素
    fruits.insert(1, 'lemon') # 在列中中1位置添加元素lemon,列表中所有元素的值都会右移1个位置
    print(fruits)
#运行结果
['pear', 'orange', 'banana', 'peach']
['pear', 'lemon', 'orange', 'banana', 'peach']
  • 从列表中删除元素

删除之后列表元素均会从列表移除。

del方法删除:删除元素并且不需要使用它时。

pop方法删除:删除元素,但是还需要使用它时,可以将Pop的值赋值给变量。

remove方法删除:不知道元素的位置但是直到元素的值时,可以使用此方法。注意:当列表中存在多个和删除值相同的元素时,只删除第一个元素。

#在列表中删除元素
    print("del one element")
    fruits = ['apple', 'orange', 'banana', 'lemon']
    del fruits[1] # 使用del方法删除下标为1的元素orange
    print(fruits)
    curFruit = fruits.pop() #使用Pop方法删除最后一个元素,类似于出栈操作,可以取出最后一个元素的值
    print(curFruit)
    print(fruits)
    fruits = ['apple', 'orange', 'banana', 'lemon']
    print(fruits)
    curFruit = fruits.pop(1)  # 使用Pop方法删除最后第2个元素,需指定删除元素的索引
    print(fruits)
    #remove方法删除元素
    fruits = ['apple', 'orange', 'banana', 'lemon']
    print(fruits)

#运行结果
del one element
['apple', 'banana', 'lemon']
lemon
['apple', 'banana']
['apple', 'orange', 'banana', 'lemon']
['apple', 'banana', 'lemon']
['apple', 'orange', 'banana', 'lemon']
['apple', 'orange', 'lemon']

组织列表

sort()对列表永久排序:

sort()排序方法会永久性改变列表排序,原列表排序将不存在;

#sort排序 对列表进行永久性排序
    fruits = ['apple', 'orange', 'banana', 'lemon']
    print("origin fruits:")
    print(fruits)
    fruits.sort()
    print("After sort list:")
    print(fruits)
#运行结果
origin fruits:
['apple', 'orange', 'banana', 'lemon']
After sort list:
['apple', 'banana', 'lemon', 'orange']

sorted()对列表临时排序:

sorted()不会改变原列表顺序。

#sorted()排序  不会改变原列表顺序
    fruits = ['apple', 'orange', 'banana', 'lemon']
    print("origin fruits:")
    print(fruits)
    print("After sorted list:")
    print(sorted(fruits))
    print("origin fruits:")
    print(fruits)
#运行结果
origin fruits:
['apple', 'orange', 'banana', 'lemon']
After sorted list:
['apple', 'banana', 'lemon', 'orange']
origin fruits:
['apple', 'orange', 'banana', 'lemon']

reverse()倒着打印列表:

reverse()方法是永久性改变列表元素顺序,将列表元素按列表排序反过来,非按字母排序。如果想将列表元素返回原来的顺序,只需要再次调用reverse方法即可。

#reverse()方法 对列表元素倒序排列
    fruits = ['apple', 'orange', 'banana', 'lemon']
    print("origin fruits:")
    print(fruits)
    fruits.reverse()
    print("1st reverse list:")
    print(fruits)
    print("origin fruits:")
    print(fruits)
    fruits.reverse()
    print("2nd reverse list:")
    print(fruits)
    print("origin fruits:")
    print(fruits)
#运行结果
origin fruits:
['apple', 'orange', 'banana', 'lemon']
1st reverse list:
['lemon', 'banana', 'orange', 'apple']
origin fruits:
['lemon', 'banana', 'orange', 'apple']
2nd reverse list:
['apple', 'orange', 'banana', 'lemon']
origin fruits:
['apple', 'orange', 'banana', 'lemon']

len()确定列表长度:

len可确定列表长度。

#len() 确定列表长度
    fruits = ['apple', 'orange', 'banana', 'lemon']
    print(len(fruits))
#运行结果
4

创建数值列表

range函数

使用range函数可以生成一系列数字,注意:range函数生成的数字列表不包含末尾数字6。

#range函数
    for num in range(1,6):
        print(num)
#运行结果
1
2
3
4
5

将range生成的数字转换为列表,可以使用list()方法。

range函数还可以指定步长,range(num1, num2, num3),其中num1表示起始值;num2表示结束值,num3表示步长,即从起始开始num1, num1 + num3 * 1, num1+ num3*2 ... ... 直到num1+num3*N的值大于num2,列表结束。

#使用List生成数字列表
    numbers = [] #创建一个空列表
    for num in range(2,13,3):
        numbers.append(num)
    print(numbers)
#运行结果
[2, 5, 8, 11]

操作数值列表相关的其它函数

min, max, sum

#使用List生成数字列表
    numbers = [] #创建一个空列表
    for num in range(2,13,3):
        numbers.append(num)
    print(numbers)
    print(min(numbers))
    print(max(numbers))
    print(sum(numbers))
#运行结果
[2, 5, 8, 11]
2
11
26

列表解析

列表解析将for循环和创建新元素的代码合并成一行,并自动附加新元素。

#列表解析创建列表
    numbers = [value**2 for value in range(1,13,4)]
    print(numbers)
#运行结果
[1, 25, 81]

使用列表的部分元素

切片 

可以使用切片访问列表中的部分元素。例如列表fruits[num1: num2],表示从下标num1开始到num2-1下标结束的元素片段。其中类似前面介绍的倒着访问列表元素,-1表示最后一个列表元素,-2表示倒数第二个列表元素,依次类推。

可以使用for循环遍历切片。

#切片
    fruits = ['apple', 'orange', 'banana', 'lemon']
    print(fruits[1:3]) # 打印第2个到第3个元素
    print(fruits[-2:-1])
    print(fruits[:3])
    print(fruits[-2:])
    for fruit in fruits[1:3]:
        print(fruit.title())

#运行结果
['orange', 'banana']
['banana']
['apple', 'orange', 'banana']
['banana', 'lemon']
Orange
Banana

for 语句

使用for循环可以重复执行某些动作,例如对列表元素依次执行某个操作。注意for循环后面需要跟着:代码for循环语句的结束,for循环后面需要缩进,相同的缩进代表相同的代码块。

#for循环
    fruits = ['apple', 'orange', 'banana', 'lemon']
    for fruit in fruits:
        print(fruit.title())
    print("All fruits")
#运行结果
Apple
Orange
Banana
Lemon
All fruits


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值