操作列表、元组

操作列表、元组

一、for循环注意事项

二、数值列表的创建(range函数的使用)

三、数字列表简单的统计计算

四、列表解析

五、切片

六、元组

七、空行

一、for循环注意事项:

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

输出:

alice
david
carolina

这段代码让python从列表中取出一个元素并储存在变量magician中,然后执行for循环里的语句。

注意 for循环后面有冒号 ":"不能漏;当for循环后面没有一个缩进语句时,python 会报错。

循环中变量的值不会随我们的操作改变,如:

for i in range(1,2,3):
    print(i,i**2,i**3)
    i += 1	//无用

最后一行无用,i是从range创造的列表一个个取值,每个值在列表创建好的时候就是固定的,尽管加 1 了但是 i 还是会回到列表中再次取值,所以没有影响。

二、数值列表的创建

range()函数的使用:

for value in range(1,5):
    print(value)

输出:

1
2
3
4

range()函数打印是左闭右开的,上例中不会打印5.

再用list()函数创建数值列表

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

输出:

[1,2,3,4,5]

使用range()还可以指定步长,例如打印1~10内的偶数

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

输出:

[2,4,6,8,10]

指定的步长可以为负数

for i in range(13,1,-2):
    print(i,end = ' ')	#end = ‘ ’ 表示后面加上空格

输出:

13 11 9 7 5 3 

三、数字列表简单的统计计算

>>>digit = [1,2,3,4,5,6,7,8,9,0]
>>>min(digit)
0
>>>max(digit)
9
>>>sum(digit)
45

四、列表解析

squares = [value**2 for value in range(1,11)]
print(squares)
'''相当于这段代码
squares = []
for value in range(1,11):
	square = value**2			#当然这两行代码也可写成
	squares.append(square)		#squares.append(value**2)
print(squares)
'''

输出:

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

要使用这种语法首先指定一个描述性的列表名如:squares;然后指定一个左边方括号并定义一个表达式,用于生成你要储存到列表中的值。这里表达式为value**2.它计算平方值,接下来编写一个for循环,用于给表达式提供值,再加上右边方括号。这里for循环给表达式将1~10提供给表达式。并且这里使用的for循环后面没有冒号。

五、切片

  1. 打印切片
players = ['charles','martina','michael','florence','eli']
print(players[0:3])		#打印列表前3个元素
print(players[1:4])		#打印列表第2~4个元素
print(players[:4])		#没有第一个索引,python自动从列表开头开始
print(players[2:])		#打印第3个到末尾所有元素
print(players[:])		#没有任何索引,打印所有元素
print(players[-3:])		#打印列表最后3个元素

输出:

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

输出:

Charles
Martina
Michael
  1. 复制列表
my_foods = ['pizza','falafel','carrot cake']
friend_foods = my_foods[:]		#将列表复制给friend_foods
my_foods.append('cannoli')
friend_foods.append('ice cream')
print('我最爱的食物是:')
print(my_foods)
print('我朋友最爱的食物是:')
print(friend_foods)

输出:

我最爱的食物是:
['pizza', 'falafel', 'carrot cake', 'cannoli']
我朋友最爱的食物是:
['pizza', 'falafel', 'carrot cake', 'ice cream']

从输出结果可以看到通过加了列表元素后,两个列表的元素不同,所以代码第二行执行的是复制一份,不是赋值。

不通过切片下面这样是不能复制列表的

my_foods = ['pizza','falafel','carrot cake']
friend_foods = my_foods

这是将列表my_foods赋值给friend_foods,两个列表实际是一个。

六、元组

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

元组大部分像列表一样,但元组中的元素是不能改变的。例如:

dimensions[0] = 250		#这不可行

这样编译器是会报错的,只能通过重新给元组变量赋值。如:

dimensions = (200,50)
for dimension in dimensions:
	print(dimension)
dimensions = ('hello','world','!')
for dimension in dimensions:
	print(dimension)

输出:

200
50
hello
world
!

七、空行

程序中不同部分可用空格来分隔开,不会影响运行。但也不能滥用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值