python学习笔记4 对列表进行操作

2021/12/20        12/21

目录

一、使用for循环遍历列表

二、避免缩进错误

1.未缩进

2.不必要的缩进

3.for 漏了冒号

三、创建数值列表

1.range()

2.range和list函数结合使用生成数字列表

3.对数字列表进行简单计算

4.列表解析:用尽可能短的语言生成列表

四、使用列表的一部分

1.切片操作

五、元组

一、使用for循环遍历列表

for cat in cats:

        print(cat+',i love it very much')

要点在于:是否缩进 决定了是否参与前面的for循环

二、避免缩进错误

python是根据缩进判断代码关系的

1.未缩进

出现问题:for 循环中没加缩进,会报错,在学习笔记1中提到过

代码报错:SyntaxError: invalid syntax

解决方法:加缩进即可,需注意所有循环内语句都需要缩进

2.不必要的缩进

如print,缩进反而会报错

代码报错:IndentationError: unexpected indent

3.for 漏了冒号

笔者学习阶段经常出现这种错误

代码报错:SyntaxError: invalid syntax

places=['hf','nj','bj','aq','wh']
for place in places:
	print('I want go to '+place)
	print(place+' is a good place')
print('i love travelling')

三、创建数值列表

1.range()

例:用for循环打印1~20(含)

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

注意:range含头不含尾,也可以指定步长

2.range和list函数结合使用生成数字列表

例:创建一个列表,其中包含数字1~1 000,000,再使用一个for循环将这些数字打印出来

values=list(range(1,1001))
for value in values:
	print(value)

两种结合可以产生很多组合,包括奇数偶数组,平方组等等

3.对数字列表进行简单计算

min()        max()        sum()

4.列表解析:用尽可能短的语言生成列表

例:创建一个列表,其中包含前10 个整数(即1~10)的立方,再使用一个for循环将这些立方数都打印出来

普通方法:

values=[]
for value in range(1,11):
	value=value**3
	values.append(value)
print(values)

或者更简单一些:

values=[]
for value in range(1,11):
	values.append(value**3)
print(values)

列表解析方法:

values=[value**3 for value in range(1,11)]
print(values)

把创建新元素和for循环直接在一行实现了,更简洁

四、使用列表的一部分

1.切片操作

place[0:3]

切片操作很灵活,[:5]        [3:]        [:]        [-3:]都是允许的操作,即可以通过切片获得列表任意子集

亦可使用for循环遍历切片,以便输出

注意:在复制列表副本时,使用切片直接复制有根本区别,

前者只是转移元素,后者两个列表指向是相同的,意味着不能分开操作

切片:

value1=list(range(0,5))
value2=value1[:]
value1.append(5)
value2.append(6)
print('value1 is ')
for value in value1:
	print(value)
print('\nvalue2 is ')
for value in value2:
	print(value)

输出:

value1 is
0
1
2
3
4
5

value2 is
0
1
2
3
4
6

复制操作:

value1=list(range(0,5))
value2=value1
value1.append(5)
value2.append(6)
print('value1 is ')
for value in value1:
	print(value)
print('\nvalue2 is ')
for value in value2:
	print(value)

结果:

value1 is
0
1
2
3
4
5
6

value2 is
0
1
2
3
4
5
6

五、元组

元组是不可修改的列表,使用圆括号进行标识

元组的遍历和列表完全相同

元组元素不可修改,会报错:
'tuple' object does not support item assignment

但是重新给元组变量赋值是合法的

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值