Python自学教程 4 操作列表(零基础新手小白适用型~)

对于未来时而迷茫时而恐惧,只要认准goaahead一直走不回头相信自己一定能够到达彼岸~

4.1 遍历整个列表

方法:for循环

men=['yyqx','yy','ty']
for man in men:
    print(man)

输出:

yyqx
yy
ty

4.1.1 在循环中执行更多的操作

men=['yyqx','yy','ty']
for man in men:
    print(man.title()+" you are handsome"+".\t")
    print("i love you "+man.title()+"\n")

输出:

Yyqx you are handsome.	
i love you Yyqx

Yy you are handsome.	
i love you Yy

Ty you are handsome.	
i love you Ty

4.2 缩进相关问题

4.2.1 避免缩进错误及逻辑错误

方法:"for"语句后立刻缩进

men=['yyqx','yy','ty']
for man in men:
    print(man.title()+" you are handsome"+".\t")
print("i love you "+man.title()+"\n")

由于最后一行没有缩进,导致输出:

Yyqx you are handsome.	
Yy you are handsome.	
Ty you are handsome.	
i love you Ty

语法没有错误,但是最后一行的print已经跳出了for循环体,因此只输出来一行。

4.2.2 不必要的缩进

方法:只有在for循环之后注意缩进格式,否则不需要缩进。

message="hello"
 print(message)

    print(message)
    ^
IndentationError: unexpected indent

4.2.3 遗漏冒号

方法:for循环语句的下一行是循环的第一行,因此for语句末尾不要忘记冒号【易于消除却难以发现】

4.3创建数值列表

4.3.1 使用函数range()

方法:range(m,n,l)表示的是m≤x<n中的整数,l表示步长

例子:

for value in range(4,8,1):
    print(value)

输出:

4
5
6
7

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

方法:list(range()),将range()作为参数,输出一个数字列表

例子:

number=list(range(4,8))
print(number)

输出:

[4, 5, 6, 7]

4.3.3 循环列表并逐次添尾

方法:列表名.append(计算表达式作为参数)
例子:

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

输出:

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

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

方法:

  • min(列表名)–列表最小值
  • max(列表名)–列表最大值
  • sum(列表名)–列表数字之和

4.3.4 列表语句简化解析

方法:

  1. 制定一个描述性列表名+[
  2. 定义一个表达式
  3. 编写for循环+]

例子:

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

输出:

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

通过列表解析能够大大简化语句的繁杂程度

4.4 使用列表的一部分

4.4.1 切片

方法:

  • 列表名+[m:n]表示取出左数第m+1个至第n+1个元素的列表(若m为负,则表示右数第m个元素至列表右数第n个)
  • 若左端和右端无数字,默认从第一个数起/至末尾结束

4.4.2 遍历切片

方法:使用for循环语句
例子:

players=['kiki','kimi','isabella']
for player in players[0:1]:
      print(player.title())

结果:

Kiki

4.4.3 复制列表

方法:设定新变量,使原列表的全切片值[:]赋予这个变量
例子:

players=['kiki','kimi','isabella']
momo=players[:]
momo.append('fifi')
players.append('riri')
print(momo)
print(players)

结果:

['kiki', 'kimi', 'isabella', 'fifi']
['kiki', 'kimi', 'isabella', 'riri']

注:如果不加[:],则表示原列表赋予新变量,即新老变量所包含的意义相同,因此如果再执行上面的代码,输出结果两变量相同。

例子:

players=['kiki','kimi','isabella']
momo=players
momo.append('fifi')
players.append('riri')
print(momo)
print(players)

结果:

['kiki', 'kimi', 'isabella', 'fifi', 'riri']
['kiki', 'kimi', 'isabella', 'fifi', 'riri']

4.5 元组

4.5.1 定义元组

元组:一系列不可修改的元素;使用圆括号来标识

例子:

numbers=(12,250)
print(numbers[0])
print(numbers[1])
numbers[0]=0
print(numbers)

结果:

    numbers[0]=0
TypeError: 'tuple' object does not support item assignment
12
250

4.5.2 遍历元组中的所有值

方法:使用for循环

4.5.3 修改元组变量

方法:将元组变量重新赋值

例子:

numbers=(12,250)
for number in numbers:
    print(number)
numbers=(23,111)
for newnumber in  numbers:
    print(newnumber)

结果:

12
250
23
111

复盘

  1. 如何高效处理列表/切片中的元素
  2. 如何使用for循环遍历列表/切片
  3. 通过切片复制列表
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值