操作列表(运用for循环)

1、遍历整个列表

1.1、使用for循环

    对列表中的每个元素都执行相同的操作,这就需要使用到for循环。

例:运用fou循环,把列表中的元素依次打印出来

citys=['beijing','jiangxi','chongqing']
for city in citys:
    print(city)

输出很简单,就是列表中所有的元素:

beijing

jiangxi

chongqing 

1.1.1、深入研究for循环
  1. 在for循环中,想包含多条语句都可以,只需要注意每行的缩进,在for循环中的语句它都是有缩进的,看上述的例子,for循环里的print()相对于for的那一行明显缩进去了几格。
  2. 在for循环后面, 没有缩进的代码都只执行一次,不会重复执行。也就是说没有缩进的代码不会加入到for循环当中。

注:写for语句末尾的冒号不要忘记写,否则会报错

2、创建数值列表

在创建数值了列表当中,使用range()函数是用来生成指定范围数字的内置函数。

例:使用range()函数来打印数

for shu in range(1,3)
    print(shu)

上述代码会打印出1~3之间的数,但不会打印3:

1

2

注:range()函数返回具有惰性求值特点,其中包含左闭右开区间 

2.1、range()语法格式:

range([start,] end [,step])

  1. range(stop)
  2. range(start,stop)
  3. range(start,stop,step)

其中:“start”表示的是开始值,默认为0;“stop”表示的是结束值;“step”表示的为步长,默认为1。

 2.2、使用range()创建数值列表

shus=list(range(1,10))
print(shus)

[1, 2, 3, 4, 5, 6, 7, 8, 9] 

2.2.1、创建任意列表数值集合

例:如何创建一个列表,其中包含前十个整数(1~10)的平方呢?如下:

shus=[]   #先创建一个空列表shus
for v in range(1,11): #因为range()函数是左闭右开,想要1~10,终值就要为20
    shu=v**2    #计算range里每个数的平方
    shus.append(shu)  #把新得到的数追加到shus列表后
print(shus)   #打印shus列表

结果如下: 

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

为了让代码更简洁,可不使用临时变量shu,而是直接将计算得到的每个值追加到列表末尾:

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

 这代码运行的结果和如上一样。 

2.3、对数值列表执行简单的统计计算

下为计算数值函数,最大值、最小值、总和

 max()最大值、min()最小值、sum()求和

3、列表的推导式

前面介绍生成shus列表的方式包含三四行代码,而列表推导式只需编写一行代码就能生成如上一样的列表;列表推导式是将for循环和创建新元素的代码合并成一行,并自动追加元素。

下面的实例运用列表推导式创建平方数列表:

shus=[v**2 for v in range(1,11)]
print(shus)

结果和上述一样。

列表推导式的格式:

        创建列表的变量名=[定义一个表达式   for循环(用于给表达式提供值)]

4、列表的切片

处理列表的部分元素,在Python中称为切片

复制列表一定要用到切片

4.1、切片的定义

要创建切片,可指定要使用的第一个元素的索引最后一个元素的索引。和range()函数一样,也取不到最后终止的元素,也属于左闭右开

切片格式和range()格式几乎相同,如下

     print(列表的变名量[①: ②: ③])

 ①为开始值,②为终止值,③为步长;如果没用指定①,则自动从列表开头开始,若是①为负数则是从列表末尾开始;如果没用指定②,就是要让切片终止于列表末尾。

注:要是值不写,冒号不可删除

例:

shus=list(range(1,5))
print(shus)
print(shus[1:3])    
print(shus[2:])     #从下标为1的元素到末尾
print(shus[:3])     #从开头到下标为3的元素
print(shus[-2:])    #第一个指定的数为负数,则在列表的尾部开始,-1为倒数第一的数,-2为倒数第二的数,以此类推
print(shus[:])      #同时省略开始和结束索引,则起始于第一个元素,结束于最后一个元素,即为复制整个列表

结果为下:

[1, 2, 3, 4]
[2, 3]
[3, 4]
[1, 2, 3]
[3, 4]
[1, 2, 3, 4]

5、元组

Python将不能修改称为不可变的,而不可变列表称为元组

 5.1、定义元组

元组看起来很像列表,但是元组是使用圆括号列表是使用中括号来标识的。

dime=(200,100)  #元组
print(dime[0])
print(dime[1])


ste=[200,100]   #列表
print(ste[0])
print(ste[1])

使用的语法与访问列表元素时使用的语法相同:

元组结果:

200   
100

列表结果:
200
100

 注:如果要定义只包含一个元素的元组,必须在这个元素后面加上逗号。例:dime=(3,)。

5.2、遍历元组

遍历元组与遍历列表的方式相同:

dimes=(100,200)
for dime in dimes:
    print(dime)

像遍历列表时一样,Python返回元组中的所有元素:

100

200 

5.3、修改元组变量 

虽然不能修改元组的元素,但可以给表示元组的变量赋值。

dimes=(100,200)
print('先前元组元素:')
for dime in dimes:
    print(dime)
dimes=(300,400)
print('新的元组元素:')
for dime in dimes:
    print(dime)

Python没有出错,因为给元组变量重新赋值是合法的

先前元组元素:
100
200
新的元组元素:
300
400

如果需要存储一组在程序的整个生命周期都不变的值,就可以使用元组。 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值