chapter 4 列表操作

1、遍历整个列表

for循环语句

magicians = ['alice', 'david', 'carolina']
for magician in magicians:   # for、in是关键字,冒号不能忘
    print(magician)          # 缩进四个字符

# 上面的for循环逐个遍历了列表 magicians 并存储在变量 magician 中,每存储一次,就打印出来

输出是:

 

Python不像C/C++那样,每句代码的结尾有 ;表示结束、代码段会有{}圈定,所以Python会特别的注重缩进,也是迎合了Python之禅里面的优美的讲述。Python会根据缩进判断是否多句代码在同一代码段,缩进不正确也会报错,在错误提示这方面PyCharm做的比较完善,学习Python的前期建议用简单的编辑器、IDE,方便于养成良好的习惯,后期在转到功能强大的IDE上,更有利于开发效率。

for循环体里面可以有N多句代码

magicians = ['alice', 'david', 'carolina']
for magician in magicians:
    introduce = "Welcome " + magician.title() + " !"
    print(introduce)

输出是:

若是想在for循环结束之后再写一些逻辑,只要恢复缩进即可

magicians = ['alice', 'david', 'carolina']
introduce = ''  
for magician in magicians:
    introduce = "Welcome " + magician.title() + " !"
    print(introduce)
introduce = "The End !"
print(introduce)

输出是:

2、创建数字列表

使用函数range()

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

输出是:

注意: range(1, 5) 包含1,但不包含5 相当于 数字列表 [1, 2, 3, 4] ,若想包含1 - 10 ,应写成 range(1, 11) .

使用函数range()创建数字列表

number = list(range(1, 11))
print(number)
odd_number = list(range(1, 11, 2))  # range函数可以指定步长,从 1 开始,不断的加 2 知道列表的终值
print(odd_number)
even_number = list(range(2, 11, 2))
print(even_number)

输出是:

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

最大值、最小值、总和

digits = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]
print('min = ' + str(min(digits)))
print('max = ' + str(max(digits)))
print('sum = ' + str(sum(digits)))

输出是:

列表解析

# ----- 1 ------
squares = []
for value in range(1, 11):
    square = value ** 2
    squares.append(square)
print(squares)
# ----- 1 ------

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

#上下两段代码等价

输出是:

3、使用列表的一部分

切片

players = ['charles', 'martina', 'michael', 'florence', 'eli']
print(players[0:3])  # 输出的是从索引0到索引3之间的元素, 不包含索引为3的元素 等价于 players[:3]
print(players[1:4])  # 输出的是从索引1到索引4之间的元素, 不包含索引为4的元素
print(players[:4])   # 输出的是从索引0到索引4之间的元素, 不包含索引为4的元素
print(players[2:])   # 输出的是从索引2到结束
print(players[-3:])  # 输出的是最后三个元素

输出是:

遍历切片

players = ['charles', 'martina', 'michael', 'florence', 'eli']
for player in players[:3]:
    print(player)

输出是:

复制列表

players = ['charles', 'martina', 'michael', 'florence', 'eli']
copy_players = players[:]   # 不可写成 copy_players = players ,这样的话 copy_players 和 players指向的是同一内存块,列表并没有在内存中另外备份,改变 players 则 copy_players 也会跟着改变,就像是一个人有个大名,也有个小名,指向的目标只有一个
print(players)
print('*****分割线*****')
print(copy_players)

输出是:

4、元组

定义元组

元组看起来犹如列表,但是用圆括号()而不是方括号表示。定义元组后,就可以使用索引来访问其元素,跟访问列表一样。元组的元素是不可以修改的,但可以给存储元组的变量重新赋值,因此,想要修改元组的元素,可以重新定义元组。

dimensions = (200, 50)
print(dimensions[0])
print(dimensions[1])

print('-----分割线-----')

for dimension in dimensions:
    print(dimension)
    
print('-----分割线-----')

dimensions = (400, 350)
for dimension in dimensions:
    print(dimension)

输出是:

 

了解代码格式

格式设置指南    :PEP 8

缩进                  :4

行长                  :建议每行不超过80个字符 注释每行不超过72个字符  注:每个汉字占两个字符

空行                  :将不同的代码段分割可以使用空行,合理使用空行可以使代码更具可读性。

 

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值