python列表使用-笔记

学习笔记python列表使用

列表


#五大数据类型 : 字符串、列表、元组、字典、集合

#增删改查
#list []
list1 = [True,None,'a',1,[1,2,3]]
print(list1)     #打印列表

print(list1 [4])  #取数据

print(len(list1)) #打印长度

break 和 continue


#break 可以用来立即退出循环语句,包括else语句
#continue 用来跳过当次循环

i = 0
while i <6:         #循环6次
    i += 1
    if i == 4:      #条件True的话可以跳过当前条件
        continue    #用来跳过当次循环
    print(i)

else:
    print('hello') #while 语句中执行正常的情况下就会执行else




#例子2
j = 0
while j < 2:       #循环2次
    j += 1
    print('打印j')
    i = 0
    while i < 6:  # 循环6次
        i += 1
        print('循环')
        if i == 4:  # 条件True的话break终止程序
            break  # 终止程序当前while语句
        print('打印次数i')

    else:
        print('显示正常1')  # while 语句中执行True的情况下就会执行else
else:
    print('显示正常2')

修改列表

list1 = ['郭靖','欧阳锋','黄蓉','杨康']

#通过索引来修改
list1[1] = '小龙女'
print('修改后',list1)

#del 关键字删除
del list1[1]
print('修改后',list1)

#通过切片来进行修改
list1[1:2] = '杨过'
list1[1:2] = [123,456]
print('修改后',list1)

#当我们通过切片来进行元素的替换时,如果使用绝对值不是1的步长,那么你取了多少个数据就要用多少个数据替换
list1[1::2] = [123,456]
print(list1)

通用操作


# in用来检查指定元素是否在列表当中
# not in 用来检查指定元素是否不在列表当中
# len() 获取列表中元素的个数
# max() 获取列表中最大值
# min() 获取列表中最小值


# len() 获取列表中元素的个数
list1 = [1,2,3] + [4,5,6]   #两个列表相加
print(len(list1))

list2 = [1,2,3] * 2   #两个列表相乘
print(list2)

#in
print(1 in list2)       #判断1是否在list2中  True

#max
print(max( list2))

#index  第一个参数 获取指定元素在列表中的位置
        #第二个参数 表示查找的起始位置
        #第三个参数 表示查找的结束位置
print(list1.index(2))   #只能找到第一个值的索引并返回出来,没有找到就报错

#count  list.count(x) 统计指定元素在列表中出现的个数
print(list2.count(1))


列表中的修改方法


list1 = ['郭靖','欧阳锋','黄蓉','杨康']
#添加方法
#append添加 向列表最后添加一个元素
list1.append ('小龙女')
print('修改后',list1)

#insert插入 向列表中的某个位置(索引)插入某个元素
list1.insert(4,'黄老邪')
print('修改后',list1)

#extend扩展其他列表
list1.extend([1,2,3])
print('修改后',list1)

#删除方法
#pop根据索引值删除并且会返回你删除的数据,
res = list1.pop(6)
res1 = list1.pop()      #如果没有传递索引值,那么会删除最后一个
print(res1)
print(res)
print('修改后',list1)

#remove 根据指定的元素来删除
res = list1.remove(2)
print('修改后',list1)

#sort 进行排序
list2 = [1,7,4,3,8,9,2]
list2.sort(reverse=True)
print('修改后',list2)
list2 = list('safkzvnksdfhefgfds')  #强制转换成列表lsit
list2.sort(reverse=False)

print('修改后',list2)

切片


#       索引1         索引2
#切片的语法:[开始的位置:结束的位置:步长]可以取到开头,不可以取到结尾,
# 步长即为元素之间的间距

list1 = ['郭靖','欧阳锋','黄蓉','杨康']
print(list1[1:3])
print(list1[:])
print(list1[0:])        #省略了 开头0 和 结尾取到了最后
print(list1[-3:-1])
print(list1[-1:-3])     #无法打印取得结果
print(list1[-1:-3:2])   #无法取到结果负数是从左到又取找
print(list1[-1:-3:-2])  #取到结果 步长为正的是从左往右  为负从右往左

作业练习


# 1. 求1000以内所有的水仙花数
# (水仙花数是指一个3位数,他的每一个位上的数字的3次幂之和等于他本身,列如1^3+5^3+3^3=153)
#1.生成100—999之间的所有整数
#求出整数的百位数、十位数、个位数
#百位:通过处以100取整
#十位:除以10取整,在除以10取余
#个位:除以10取余
#判断是否符合水仙花数规则
# i = 100
# while i < 1000:
#     #print(i)           #打印100-999显示
#     a = i // 100        #求百位数 i整除100
#     b = (i // 10)%10    #i整除10取10
#     c = i % 10
#     if a ** 3 + b ** 3 + c ** 3 == i:
#         print(i)
#     i += 1


#方法二
i = 100
while i < 1000:
    #print(i)           #打印100-999显示
    a = str(i)       #求百位数 i整除100
    if int(a[0]) ** 3 + int(a[1]) ** 3 + int(a[2]) ** 3 == i:
        print(i)
    i += 1

# 2. 获取用户输入的任意数,判断其是否是质数?
#什么是质数 只能被1和他本身整除的数就是质数 列如:235711 13
#获取用户输入的任意数
# num = int(input('输入数字:'))
# i = 2
# while i < 1000:
#     if num % i == 0:
#         print('不是质数')
#         break
#     i += 1
# else:
#     print('是质数')


num = int(input('输入一个任意大于1的整数:'))
#定义一个变量
i = 2
#创建一个标记 用来记录num是否是质数 默认是质数
flag = True

while i < num:
        #如果这个条件成立,则怎么num一定不是质数
    if num % i == 0:
        flag =False    #一旦进入这个循环 则证明num不是质数
    i += 1
if flag:
    print(num,'是质数')
else:
    print(num,'不是质数')

# 3. 猜拳游戏:
# • 出拳  玩家:手动输入  电脑:随机输入
# • 判断输赢:  玩家获胜  电脑获胜  平局
import random
c = 0
while True:
    a = int(input('请输入0(石头),1(剪刀),2(布):'))
    b = random.randint(0,2)
    if a == b:
        print(f'机器人出{b},平局,输入3退出')
    elif a == 3:
        print('退出游戏')
        break
    elif (a!=2 and a<b ) or (a == 2 and b == 0):
        c += 1
        print(f'机器人出{b},恭喜获胜,当前积分{c},输出3退出')
    elif (b!=2 and a>b) or (b == 2 and a == 0):
        print(f'机器人出{b},你输了,输出3退出')

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值