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

tech2023-12-23  74

目录

4.1 遍历整个列表4.1.1 在循环中执行更多的操作 4.2 缩进相关问题4.2.1 避免缩进错误及逻辑错误4.2.2 不必要的缩进4.2.3 遗漏冒号 4.3创建数值列表4.3.1 使用函数range()4.3.2 使用range()创建数字列表4.3.3 循环列表并逐次添尾4.3.3 对数字列表执行简单的统计计算4.3.4 列表语句简化解析 4.4 使用列表的一部分4.4.1 切片4.4.2 遍历切片4.4.3 复制列表 4.5 元组4.5.1 定义元组4.5.2 遍历元组中的所有值4.5.3 修改元组变量 复盘

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 列表语句简化解析

方法:

制定一个描述性列表名+[定义一个表达式编写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

复盘

如何高效处理列表/切片中的元素如何使用for循环遍历列表/切片通过切片复制列表
最新回复(0)