zoukankan      html  css  js  c++  java
  • python-list 列表 数组

    之前我们已经学习了如何定义字符串,比如现在有一个字符串存储了班级中所有学生的名字:

    stus='s1,s2,s3,s4,s5,...s43'

    如果我们想取出其中某个学生的名字或者统计学生数量等,当然是存在方法可以实现,但是会很麻烦。

    本章节会介绍list列表。

     1、定义一个数组,用[],每个用,隔开

    stus=['wldong','hhsun','xbxu']
    #       0           1       2
    # 索引、下标、角标,从0开始

    2、定义一个空的列表

    stus2=[]
    stus3=list()

    3、增加元素

    stus.append('hejun') #在list的末尾增加一个元素
    stus.insert(9,'yqzhou') #在指定的位置插入元素
    # 如果指定的下标不存在,那么会把元素插入到最后
    print('原始数据',stus)

    4、查询元素

    print('单个取',stus[2]) #取xbxu
    print('第一个元素',stus[0]) #获取第一个元素
    print('最后一个元素',stus[-1]) #获取最后一个元素

    5、修改元素

    #找到下标,然后进行修改
    stus[4]='yaya'
    print('修改后',stus)

    6、删除元素

    stus.pop() #默认删除list里面最后一个元素
    stus.pop(0) #可以指定下标进行删除
    stus.pop(9) #删除指定下标不存在的元素,会报错
    del stus[0] #删除指定下标的元素
    stus.remove('xbxu') #删除指定的元素
    
    #1、list里面有多个一样的元素
    stus.append('yaya') #先添加一个重复的元素
    print('添加重复的元素',stus)
    stus.remove('yaya') #当list中存在多个一样的元素,只会删除一个
    
    #2、不存在的元素
    stus.remove('rjguo') #删除不存在的元素,会报错
    
    print('删除后的结果',stus)

    7、其他一些常用的方法

    #1、查看某个元素在list里面的数量
    count=stus.count('yaya') 
    print('count方法',count)
    
    #2、清空list
    stus.clear() 
    
    #3、复制list的内容
    new_stus=stus.copy() 
    print('复制后的值',new_stus)
    
    #4、反转
    stus.reverse() 
    print('反转后的值',stus)
    
    #5、排序
    nums=[5,6,85,345,221,667,336]  #先定义一个list
    nums.sort() #排序,从小到大
    print('排序后的值',nums)
    
    nums.sort(reverse=True) #降序排序
    print('排序反转后的值',nums)
    
    #6、把一个list的元素,加入到另外一个list里面
    stus.extend(nums) 
    print('extend后的值',stus)
    
    #7、找某个元素的下标;如果元素不存在,会报错
    result=stus.index('hejun') 
    print('list的下标',result)

    8、list练习题

    #需求内容如下:
    #登录后,需要校验 用户不存在的话 要提示
    #需要校验是否为空
    #账号和密码正确登录成功
    
    #需求分析如下:
    #1、输入账号密码,最多输错3次
    #2、校验是否输入为空
    #3、校验账号是否存在 list.count()
    #4、从usernames里面找到user的下标,然后去password中取对应的密码
    import datetime
    today=datetime.datetime.today()
    for i in range(3):
        username=input('username:').strip()  #strip去掉一个字符串两边的空格
        password=input('password:').strip()
        if username=='' or password=='':
            print('账号/密码不能为空!')
        elif username not in usernames: #判断元素是否存在某个list里面
            print('用户不存在!')
        else:
            user_index=usernames.index(username) #登录用户的下标
            p=passwords[user_index]
            if password==p:
                print('欢迎%s登录,今天的日期是%s.'%(username,today))
                break
            else:
                print('密码错误!')
    else:
        print('错误次数已经用尽!')

    9、多维数组

    1)2维数组

    nums1=[1,2,3,4,['a','b','c','d']] #2维数组
    print(nums1[4][2])  #取c

    2)3维数组

    nums2=[1,2,3,4,['a','b','c','d',['test','dev','pre']]]  #3维数组
    print(nums2[4][4][1]) #取dev

    3)练习:给账号加上前缀 

    stus=['wldong','hhsun','hejun']
    for stu in stus: #for循环直接循环一个list,就是取list里面的每一个元素
        print('每次循环取的值',stu)
        username='szz-'+stu
        print(username)
  • 相关阅读:
    Android深度探索--HAL与驱动开发----第十章读书笔记
    Android深度探索--HAL与驱动开发----第九章读书笔记
    Android深度探索--HAL与驱动开发----第八章读书笔记
    Android深度探索--HAL与驱动开发----第七章读书笔记
    Android深度探索--HAL与驱动开发----第六章读书笔记
    Android深度探索--HAL与驱动开发----第五章读书笔记
    Android深度探索--HAL与驱动开发----第四章读书笔记
    Android深度探索--HAL与驱动开发----第三章读书笔记
    Android深度探索--HAL与驱动开发----第二章读书笔记
    Android深度探索--HAL与驱动开发----第一章读书笔记
  • 原文地址:https://www.cnblogs.com/wldong/p/10675548.html
Copyright © 2011-2022 走看看