二、列表

2.1 列表是什么

bicycles = ['trek','cannondale','redline','specialized']
print(bicycles)
结果:['trek','cannondale','redline','specialized']

① 访问列表元素

bicycles = ['trek','cannondale','redline','specialized']
print(bicycles[0]) #0-3
print(bicycles[3].title())
结果:trek  Specialized

这里可以将索引指定为-1,可让Python返回最后一个列表元素,依此类推。

② 使用列表中的各个值

任务:打印这句话My first bicycle was a Trek.

bicycles = ['trek','cannondale','redline','specialized']
message = f"My first bicycle was a {bicycles[0].title()}."
print(message)
结果:My first bicycle was a Trek.

2.2 修改、添加和删除元素

① 修改列表元素

指定列表名和要修改的元素的索引,再指定该元素的新值。

bicycles[0]='ducati'

② 在列表中添加元素

bicycles.append('honda')(append:在列表末尾插入元素)

bicycles.insert(0,'ducati')(insert:在列表指定位置插入元素)

③ 在列表中删除元素

del bicycles[0](del:删除列表指定位置元素)

motorcycles = ["honda","yamaha","suzuki"]
print(motorcycles)
    
popped_motorcycle = motorcycles.pop()
print(motorcycles)
print(popped_motorcycle)
    结果["honda","yamaha","suzuki"]
        ["honda","yamaha"]
        suzuki

(pop:删除列表元素并弹出,默认删除最后一个元素)

motorcycles.remover('ducati')(remove:根据值来删除元素)

2.3 组织列表

① 使用方法sort()对列表永久排序

cars = ["bmw","audi","toyota","subaru"]
cars.sort()#按字母顺序排序
cars.sort(reverse=True)#按字母顺序相反的顺序排序

② 使用函数sorted()对列表临时排序

cars = ["bmw","audi","toyota","subaru"]
pirnt("\nHere is the sorted list:")
print(sorted(cars))
pirnt(cars)
    结果:Here is the sorted list:
          [audi,bmw,subau,toyota]#按字母顺序排序
          [bmw,audi,toyota,subaru]

 ③ 使用reverse()翻转列表元素的排列顺序

cars.reverse()#永久修改

④ 确定列表长度-len()

len(cars) #4

2.4 操作列表

① 遍历整个列表-for

magicians = ["alice","david","carolina"]
for magician in magicians:  #注意冒号必不可少
    print(magician)
    #每次循环将数组中的值赋值于magician,然后输出magician,直到循环玩数组中所有制
    
    print(f"{magician.title()},that was a great trick!")
    pirnt(f"I can't wait to see your next trick,{magician.title()}.\n")
    
alice
david
carolina

Alice,that was a great trick!
I can't wait to see your next trick,Alice.

David,that was a great trick!
I can't wait to see your next trick,David.

Carolina,that was a great trick!
I can't wait to see your next trick,Carolina.

 ② 创建数值列表-list(),range()

range(x)= range(0,x)
range(x,y)
range(x,y,z)

list(range(6))   #[0,1,2,3,4,5]
list(range(1,6)  #[1,2,3,4,5],注意是1-5
list(range(1,6,1))  #[1,2,3,4,5],步长为1
     
任务:创建一个列表,包含1-10的平方。
squares = []
for value in range(1,11):
     square = value**2
     squares.append(square)  #两句可合并为squares.append(value**2)
     #以上代码可合并为squares = [value ** 2 for value in range(1,11)]
print(squares)

 ③ 对数字列表执行简单的统计计算

digits = [1,2,4,5,6,7]
max(digits) #最大值
min(digits) #最小值
sum(digits) #总和

 ④ 使用列表的一部分

切片:
players = ['charles','martina','michael','florence','eli']
#打印列表全部元素
print(players[:])
#打印列表的第一个元素(索引0)
print(plaers[0])
#打印列表的第1、2、3个元素(索引0,1,2)
print(players[0:3])
print(players[:3])
#打印列表的第3、4、5个元素(索引2,3,4)
print(players[2:5])
print(players[2:])
#打印列表的最后三个元素(负数索引)
print(players[-3:])
#每隔1个元素就提取1个
print(players[0:4])
print(players[0:4:1])
#每隔2个元素就提取1个
print(plaers[0:4:2])

遍历切片
players = ['charles','martina','michael','florence','eli']
for player in players[0:3]:
    print(player.title())

复制列表:

my_foods=['pizza','falafel','carrot cake']
friend_foods = my_foods[:]
#若这里直接friend_foods = my_foods复制列表的话,后续对其新增值处理,两个列表输出的值仍还是相同的
my_foods.append('cannoli')
friend_foods.append('ice crean')

print("My favorite foods are:")
print(my_foods)

print("\nMy Friend's Favorite Foods are:")
print(friend_foods)

2.5 元组--不可变的列表(小括号)

例:dimension = (269,40)

①  遍历元组中的所有值

dimensions = (200,50)
for dimension in dimensions:
    print(dimension)

200
50

② 修改元组变量

不用通过索引赋值的方式来修改元组变量

dimensions = (200,50)
print("Original dimensions:")
for dimension in dimensions:
    pirnt(dimension)
    
dimensions = (200,50)
print("\nModified dimensions:")
for dimension in dimensions:
    pirnt(dimension)
    
Original dimensions:
200
50

Modified dimensions:
400
100

 

posted @ 2024-07-03 14:38  鹤比纷恆红  阅读(33)  评论(0)    收藏  举报