循环和列表,break和continue的使用

循环中的 break 和 continue使用

break是跳出循环,进行循环后边的代码
continue 是结束本次循环,开始下一次循环

序列

  • 序列是python中最基本的一种数据结构,用来储存一组有序数据,所有数据在序列中都有一个唯一的位置,并且系列中的数据会按照添加的位置来分配索引。
  • 数据结构值计算机中的数据存储方式。
    序列分为:可变序列(字符串),不可变序列(列表,元组)
    不可变序列:不可以改变里边的数据,如字符串不能改变里边的内容
    可变序列:可以改变里边的数据,如列表,可以通过索引来改变

列表:

列表是python中的一个概念,也是python中的一个对象
列表是用来保存对象的对象
列表可以用来储存多个有序的数据

创建一个空列表 li=[]

切片:list[初始位置:结束位置:步长]

列表通过索引来取数据

列表的操作:

  • +和*
    +将两个列表合成一个列表
    *只能是列表和数字相乘,意思是吧列表里的元素重复几次
  • in 和not in
    in / not in 用来检查指定元素是否在列表中,返回True 或False
  • len()来确定元素的个数,是从1开始,不是从0
  • max()用来取到列表中的最大值
  • min()用来取到列表中的最小值
  • list.index(x) 返回在list中x的位置
  • list.index(x,起始位置,终止位置)
  • list.count(x)计算在list中x出现的次数
通过切片的方式来修改列表内的元素:

list[初始位置,结束位置]=[ , ]将初始位置和结束位置之间的元素替换成后边列表的元素
list[初始位置,结束位置]=“str” 将字符串分成一个一个字母放入列表
如果加上步长,则要计算回取到多少元素,后边列表必须是有对应数目个元素,字符串必须是对应的长度,否则会报错。
list.append(x)在列表的最后边加上x元素
list.insert(位置,x)位置是数字,比如2,则会把第3个数据往后移,然后插入x
list.extend( [ ] )使用新的列表来扩展数列,默认回家再最后边
list.pop()删除列表最后的元素,返回删除的元素
list.remove(x)删除指定的元素,括号中输入元素的名称,如果有多个相同的元素,则只会删除第一个元素
list.reverse()反转列表
list.sort()排序,默认reserve=False(升序),reserve=True反转(降序)

for 循环和range()

例:for i in range(10):
循环10次,i从0取到9
例:for i in list:
每次循环 i=list中的某一个元素,循环的次数为列表中元素的个数
列表翻转的方法

lis1=[1,2,3,4,5,6]
lis2=lis1[::-1]
print(lis2)

lis2=lis1[::-1]


lis3=[]
for i in lis1:
    lis3.insert(0,i)
print(lis3)



lis1.reverse()
print(lis1)

猜数游戏

li=[]
li1=[]
for i in range(9):
    print("请输入一个1-10之间的数字")
    n=int(input(f"你还有{9-i}次机会,请猜一个数字:"))
    li.append(n)
li.sort()     
se=set(li)   #把输入的数字放在集合中,目的是去重 
li=list(se)
for i in li:
    if 1<=i<=10:   #防止输入其他的数字
        li1.append(i)   
print(li1)
for i in range(len(li1)):  #这一步必须给列表排序,又因为一开始排序了,因此不需要再排序了
    if li1[i] !=1+i:
        x=i
        break
    elif i+1==len(li1):
        x=i+2
        break
print(f"游戏结束,最后的答案是{x}")

输出两个列表中相同的元素

li1=[11,22,33]
li2=[22,44,55]
for i in li1:
    for k in li2:
        if i==k:
            print(k)

给8个老师分配到三个地方

import random
laoshi=["数学","语文","英语","物理","化学","生物","音乐","美术"]
li0=[]
li1=[]
li2=[]
for i in range(7):
    x=random.randint(0,2)
    if x==0:
        li1.append(laoshi[i])
    elif x==1:
        li2.append(laoshi[i])
    else:
        li0.append(laoshi[i])
print(li0,li1,li2)
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值