Python教程之循环语句和列表元组

一、for循环

for循环会将可迭代对象中的元素逐个取出并赋值给循环变量,随后执行循环体内的语句。当元素被全部取出后,循环将自然结束。

对于for循环,我们无需显式地指定循环次数,因为循环次数完全由可迭代对象的长度决定

for 循环变量 in 可迭代对象:
    循环语句

Range 介绍

Python 提供了一个内置的 range() 函数,该函数用于生成一个数值序列,表示一个指定的范围。左闭右开区间-----取前不取后range() 函数有三个参数:start(范围起始值,默认为0)、end(数值范围结束值,不包括该值)和 step(步长,默认为1)。

for 循环变量 in range(start,end,step):
    循环语句

对于for循环又称为迭代循环,它的循环次数由可迭代对象的长度决定。字符串,以及后续将要学习的列表、元组、字典、集合等,均属于可迭代对象的范畴。

循环变量i的值在循环过程中不受循环体内代码的影响,每次循环都会按照可迭代对象的元素顺序进行赋值。

for i in range(5,10,2):
    print(i)
    i = 'Hello world!'
    print(i)
#结果
5
Hello world!
7
Hello world!
9
Hello world!

二、continue

Continue 会跳过当前循环的剩余部分,即终止当前迭代,并立即进入下一次循环

for i in range(1,11):
    if i%3 == 0:
        continue
    print(i,end=" ")

break/continue 只能用在循环中,除此以外不能单独使用。else也可以和for一起使用,循环被break终止时,else不会执行。

for i in range(1,11):
    if i%3 ==0 or i == 10:
        continue
    elif i==5:
        break
    else:
        print(i,end=" ")
else:
    print('循环结束')

break/continue 在嵌套循环中,只对最近一层循环起作用

for i in range(1,5):
    for j in range(1,5):
        if j ==3:
            break
        print(f"i={i},j={j}")

三、列表

列表可以储存多种类型的数据(几乎包括Python中的任何对象)。创建列表的方式非常简单,只需用逗号分隔不同的数据元素,并用中括号括起来即可。

li = [1,'LIS',2,[15,'张三']]

序列索引是指为序列类型(包括字符串、列表、元组)中的每一个元素分配一个数字(即位置和索引)。

正向索引(从左到右)表示法为:第一个元素的索引是0,第二个元素的索引是1,以此类推。

负向索引(从右到左)表示法则相反:最后一个元素的索引是-1,倒数第二个元素的索引是-2,以此类推。

当使用索引访问列表元素时,务必确保索引在有效范围内,否则将报错

列表中的元素不仅可以通过索引单独访问以获取值,还可以使用切片操作在指定范围内访问取值。切片操作是在两个索引值之间取值,遵循左闭右开的原则(即包含起始索引,不包含结束索引)。在切片时,如果指定的范围超出列表长度,将不会报错。此外,切片时还可以指定步长来改变访问元素的间隔。

li[0:20:2]

在列表中增加元素的方法有三种:使用append方法可以将元素默认添加到列表的末尾;使用insert方法可以在指定的索引位置添加指定的元素;而extend方法则用于将另一个列表中的元素逐一添加到当前列表中

li_name = ['张三']
li_name.append('李四')
li_name.insert(3,'wang')
li_name.extend(['zhang',3,'8u'])

在列表中查找元素时,我们通常关注元素是否存在。以下是关于查找元素的说明以及相关的运算符和函数:

  1. 使用 in 运算符可以判断指定元素是否存在于列表中。如果元素存在,则结果为 True;否则,结果为 False。
  2. 使用 not in 运算符可以判断指定元素是否不存在于列表中。如果元素不存在,则结果为 True;否则,结果为 False。

另外,index 方法用于查找元素在列表中的索引位置。但请注意,如果尝试查找不存在的元素,index 方法会报错

在列表中修改元素时,可以通过使用索引来直接替换对应的元素值

删除列表中的元素是不可逆的操作,以下是四种常用的方法:pop()、remove()、clear() 和使用 del 语句。

pop() 方法默认移除列表中的最后一个元素,通过提供索引值 pop(index) 可指定索引位置进行删除元素

remove() 方法用于指定要移除的元素进行移除。

使用 del 关键字配合索引或切片范围可以移除列表中的元素或元素范围。

clear() 方法用于清空整个列表

列表推导表达式

列表推导表达式可以快速生成一个列表,并能筛选列表的值。

li_num = []
for i in range(100):
    if i%2 == 0: 
        li_num.append(i)

可推导为:

li_new_num = [i for i in range(100) if i%2 == 0]

列表的其他方法

  • count:用于统计列表中某个元素出现的次数
  • reverse:该方法将列表中的元素进行反向排序,但请注意,它并不提供排序(即从小到大或从大到小)的功能,只是简单地翻转列表的顺序
  • sort:此方法用于对列表中的元素进行排序。默认情况下,它采用Timsort算法进行排序。

四、元组

元组类似于列表,但其主要区别在于元组的元素是不可修改的。元组使用小括号来包含其元素。如果元组仅含有一个元素,那么在小括号之后仍需添加一个逗号‘,’,否则它将被视为单个元素而非元组。

a =(1,)

拆包操作允许我们将元组的元素同时赋值给多个变量。只要变量的数量不超过元组的长度即可。另外,如果在变量前面加上*号,那么可以将多于变量的元素一并接收,并返回一个列表

tuple_one = ('苹果','香蕉','哈密瓜','葡萄')
a,*b,c = tuple_one
print(a)
print(b)
print(c)
#结果
'苹果'
['香蕉','哈密瓜']
'葡萄'
  • 31
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值