python从入门到实践笔记(二)

时间:2018/04/22

主要学习:

4.操作列表


操作列表


遍历整个列表

    你经常需要遍历列表里的所有元素,对每个元素进行相同的操作。这时候可以使用Python中的for循环进行遍历操作。这种遍历我们也可称为迭代。

magicians=['alice','david','carolina']
for magician in magicians:
	print(magician)

#利用for循环进行列表中所有元素的打印操作,直至执行至列表中无其他元素for循环停止

#编写for循环进行遍历时注意列表和储存列表中每个值的临时变量的命名,一般使用单复数形式以避免命名的混乱。

#在for循环中可以执行更多操作
magicians=['alice','david','carolina']
for magician in magicians:
	print(magician.title()+',that was a great trick!')
	print('I can\'t wait to see your next trick,'+magician.title()+'.\n')
print('Thank you,everyone.That was a great magic show!')#没有缩进时,该语句不在for循环中,所以在for循环结束后该语句仅执行一次

避免缩进错误:

忘记缩进,多个步骤后面步骤忘记缩进,不必要的缩进,循环后不必要的缩进,遗漏冒号


创建数值列表

numbers=list(range(1,6))#range()创建1到6(不包括6)的数,list()则将数字转换成列表
print(numbers)#打印了1-5这五个数字组成的列表
#使用range()函数时,还可以指定步长。
even_numbers=list(range(2,11,2)#range()函数从2开始数,依次加2直到11
print(even_numbers)
#获取前十个数的平方根列表
squares=[]
for value in range(1,11):
	square=value**2#**表示乘方运算
	squares.append(square)
print(squares)
#对数字列表进行简单的统计计算
print(min(squares))#打印最小值
print(max(squares))#打印最大值
print(sum(squares))#打印列表中数字的和

#以上可以使用列表解析来缩短行数

squares=[value**2 for value in range(1,11)]
print(squares)

使用列表的一部分

  切片

处理列表的部分元素--python称之为切片(slice)。

players=['charles','martina','michael','flirence','eli']
print(players[0:3])#打印第1个到第3个运动员
print(players[1:4])#打印第2个到第4个运动员
print(players[:4])#没有指定第一个索引,python将会自动从列表开头开始
print(players[2:])#打印终止于列表末尾
print(players[-3:])#打印最后3个运动员

遍历切片

在for循环中使用切片可以遍历列表部分元素。

players=['charles','martina','michael','flirence','eli']
print('Here are the first three players in my team:')
for player in players[:3]:
	print(player.title())

复制列表

!注意使用切片复制列表与用赋值赋值的差别

my_foods=['pizza','falafel','carrot cake']
friend_foods=my_foods[:]#同时省略起始引符和终止引符,达到复制列表的作用
print('My favorite foods are:\n'+str(my_foods))
print('My friend\'s favorite foods are:\n'+str(friend_foods))
#通过append()方法在两个列表中添加元素
my_foods.append('cannoli')
friend_foods.append('ice cream')
print('My favorite foods are:\n'+str(my_foods))
print('My friend\'s favorite foods are:\n'+str(friend_foods))

my_foods=['pizza','falafel','carrot cake']
#以下步骤行不通
friend_foods=my_foods
friend_foods.append('ice cream')
print('My favorite foods are:\n'+str(my_foods))
print('My friend\'s favorite foods are:\n'+str(friend_foods))#两个都会出现'ice cream'

#这里将my_foods赋值给friend_foods,仅仅只是让python将新变量friend_foods关联到包含在my_foods中的列表,两个变量都指向同一个列表,因此对于任一变量的修改都会影响到另一变量

!当想要使用列表副本时请使用切片操作复制列表

元组

不可变的列表称为元组(tuple)。元组看起来类似列表,但是使用圆括号而不是方括号来标识。

定义元组

dimensions=(200,50)
print(dimensions[0],dimensions[1])
#尝试修改元组元素,以下过程将会报错
dimensions[0]=250
print(dimensions[0])

遍历元组中的所有值

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

修改元组变量

修改元组变量需要重新定义该元组

dimensions=(200,50)
print('Original dimensions:')
for dimension in dimensions:
	print(dimension)
dimensions=(400,100)
print('Modified dimensions:')
for dimension in dimensions:
	print(dimension)

设置代码格式

格式设置指南

缩进

行长

空行

其他格式设置指南



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值