美文网首页
July 20-day5-Python列表

July 20-day5-Python列表

作者: 慢节拍_2709 | 来源:发表于2018-07-20 19:00 被阅读0次

    输出和输入函数

    1. 输出函数出:print()
      1.默认每个print函数,输出完内容后会输出一个换行
      2.一个print函数输出多个内容的时候,内容之间是用空格隔开的
      3.内容后边加end=来设置结束标志(默认是‘\n’)
      4.通过设置sep的值,来设置多个内容之间的间隔符
    print('aaa', 100, end='\n', sep=',')
    print('bbb')
    结果:
    aaa,100
    bbb
    
    1. 输入函数:input()函数
      1.input()函数可以接收从控制台输入的内容(以回车为结束标志)
      2.input函数会阻塞线程,程序执行到input的时候会停下来,等待用户的输入,输入完成后才会接着执行下面的内容
      3.接收到的数据是以字符串的形式返回的
    value = input('输入一个数字:')
    print('name', value, type(value))
    结果:
    输入一个数字:5
    name 5 <class 'str'>
    
    练习:猜数字游戏

    随机产生一个1-100的整数
    输入的数字如果和产生的随机数是一样的,就提示猜对了,并且游戏结束.
    如果输入的数大于或者小于随机数,就提示输入的数字偏大或者偏小,然后让其重新输入.

    import random
    count = 0
    number = random.randint(1,100)
    print('******这是一个小游戏******')
    while True:
        temp = input('你猜才我的数字是什么:')
        guess = int(temp)
        count += 1
        if guess < number:
            print('你这个数小了')
            continue
        elif guess > number:
            print('你这个数大了')
            continue
        elif guess == number:
            if count == 1:
                print('牛批')
            elif 1 < count <= 5:
                print('还可以')
            elif count >= 6:
                print('你是狗吧')
            print('恭喜你猜对了')
            break
    结果:
    ******这是一个小游戏******
    你猜才我的数字是什么:5
    你这个数小了
    你猜才我的数字是什么:50
    你这个数小了
    你猜才我的数字是什么:70
    你这个数大了
    你猜才我的数字是什么:60
    你这个数小了
    你猜才我的数字是什么:66
    你这个数大了
    你猜才我的数字是什么:63
    你这个数小了
    你猜才我的数字是什么:65
    你这个数大了
    你猜才我的数字是什么:64
    你是狗吧
    恭喜你猜对了
    

    列表

    • 列表、字典、元组、集合都是序列,都是容器类型的数据类型

    • 列表(list):用来存储多个数据的一种数据类型。里面存储的单个数据,我们叫元素
      特点:1.有序的 2.可变的(可变指定是容器中的内容的个数和值可变)3.元素可以是任何类型的数据
      列表的值:用[]将列表中的元素括起来,多个元素之间用逗号隔开。[] --> 空列表

    1. 怎么声明一个列表
    list1 = []  #创建一个空的列表
    print(type(list1))
    
    list2 = [1, 12.8,  'abc',]
    print(list2,type(list2))
    
    # 将其他的数据类型转换成列表
    list3 = list('444sdasd')
    print(list3)
    
    list4 = list(x for x in range(12))
    print(list4)
    结果:
    <class 'list'>
    [1, 12.8, 'abc'] <class 'list'>
    ['4', '4', '4', 's', 'd', 'a', 's', 'd']
    [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
    
    1. 获取列表元素
      列表中的每一个元素都对应的一个下标:0 ~ 列表的长度-1; -1 ~ -列表长度
      a.获取单个元素:列表名[下标]
    name = ['小明','保罗','英雄','克罗地亚','科比']
    print(name[1])
    print(name[-1])
    结果:
    保罗
    科比
    

    b.获取部分元素(切片)

    • 列表名[起始下标:结束下标]:获取从起始下标开始,到结束下标前的所有的元素。结果是一个列表.
    • 列表名[起始下标:结束下标:步进]从起始下标开始,每次下标值加步进获取下一个元素,知道结束下标前为止.
    • 起始下标和结束下标都可以缺省:
      如果步进是正数,起始下标缺省就是从第一个元素开始获取;如果步进是负数就从最后一个元素开始结束下标缺省,步进是正数,获取到最后一个元素;步进是负数,从后往前获取到第一个元素
    name = ['小明','保罗','英雄','克罗地亚','科比']
    print(name[0:3])
    print(name[-5:-2])
    print(name[0:4:2])
    print(name[:])   #获取列表中的所有的元素,从新创建一个新的列表
    print(name[::-1])   #使列表中的元素倒叙过来
    结果:
    ['小明', '保罗', '英雄']
    ['小明', '保罗', '英雄']
    ['小明', '英雄']
    ['小明', '保罗', '英雄', '克罗地亚', '科比']
    ['科比', '克罗地亚', '英雄', '保罗', '小明']
    

    c.一个一个的获取列表的所有元素(遍历列表)

    scores = [12,89,44,46,84,32]
    #遍历列表
    #方法1:for循环
    for item in scores:
        print(item)
    #方法2:
    # while循环
    index = 0
    while index < len(scores):
        print(scores[index])
        index += 1
    结果:
    12
    89
    44
    46
    84
    32
    12
    89
    44
    46
    84
    32
    
    1. 获取列表的长度(获取列表元素的个数)
    scores = [12,89,44,46,84,32]
    print(len(scores))
    结果:
    6
    

    添加列表元素

    1. append函数
      列表.append(元素)
      在列表的末尾添加一个元素
    skills = []
    print(skills)
    skills.append('龟派气功')
    print(skills)
    skills.append('帽子戏法')
    print(skills)
    结果:
    []
    ['龟派气功']
    ['龟派气功', '帽子戏法']
    
    1. insert函数
      列表.insert(下标,元素)
      在列表的指定的下标前插入一个元素
    • 注意:在这里,下标可以越界,如果越界,就会插入到列表的最前面或者最后面
    1. +
      列表1+列表2
      将列表2中的元素,添加到列表1中元素合并后创建一个新的列表
    skills = ['龟派气功']
    new_skills = skills + ['风后奇门','阿威十八式']
    print(new_skills)
    结果:
    ['龟派气功', '风后奇门', '阿威十八式']
    
    # 练习:从控制台输入10个学生的成绩,然后保存在一个列表中
    score = []
    for _ in range(10):
        scores = float(input('请输入学生的成绩'))
        score.append(scores)
    
    print(score)
    

    删除列表元素

    1. del 语句
      del 可以删除任何数据
      del 列表[下标] :删除列表中的指定下标的元素
    • 注意:这里的下标不能越界
    films = ['肖生克的救赎','回家的诱惑','大话西游','逃学威龙','赌圣','回家的诱惑']
    del films[2]
    print(films)
    结果:
    ['肖生克的救赎', '回家的诱惑', '逃学威龙', '赌圣', '回家的诱惑']
    
    1. remove方法
      列表.remonve(元素):删除列表中的指定的元素
      如果同一个元素有多个,只删除最前面的那一个
    • 注意:如果要删除的元素不再列表中,会报错
    films = ['肖生克的救赎','回家的诱惑','大话西游','逃学威龙','赌圣','回家的诱惑']
    films.remove('回家的诱惑')
    print(films)
    结果:
    ['肖生克的救赎', '大话西游','逃学威龙', '赌圣', '回家的诱惑']
    
    1. pop方法
      列表.pop():将列表中的最后一个元素取出来
      列表.pop(下标):将列表中指定下标的元素取出来
    • 注意:这里下标不能越界
    films = ['肖生克的救赎','回家的诱惑','大话西游','逃学威龙','赌圣','回家的诱惑']
    film1 = films.pop()
    print(films)
    print(film1)
    film2 = films.pop()
    print(film2,films)
    结果:
    ['肖生克的救赎', '回家的诱惑', '大话西游', '逃学威龙', '赌圣']
    回家的诱惑
    赌圣 ['肖生克的救赎', '回家的诱惑', '大话西游', '逃学威龙']
    
    小练习

    scores = [23,45,78,32,90,89,1],删除所有小于60分的成绩

    scores = [23, 45, 78, 32, 90, 89, 1]
    for item in scores[:]:
        if item < 60:
            scores.remove(item)
    print(scores)
    结果:
    [78, 90, 89]
    

    相关文章

      网友评论

          本文标题:July 20-day5-Python列表

          本文链接:https://www.haomeiwen.com/subject/hauqmftx.html