美文网首页
2018-07-20 day05

2018-07-20 day05

作者: Kris_Shin | 来源:发表于2018-07-20 17:44 被阅读0次

    一、输入输出函数

    1.输出函数:print()

      1. 默认每一个print()函数输出完内容后会输出一个换行符
      1. 一个print()函数输出多个内容用','隔开,输出会变成空格
      1. 内容后面加上end=''来设置结束标志,默认是'\n'
      1. 内容后加上sep='',来把原本的','显示的空格替换掉
    print('aaa', 666, end='')
    print('bbb', 1000, sep='')
    

    2.输入函数:input()函数

      1. input()函数可以接收从控制台输入的内容,以回车为结束标志
      1. input()函数会阻塞线程,程序执行到input的时候会停下来等待用户的输入,输入完成后才会继续执行
      1. input()接收到的数据是以字符串的形式返回(python2.x中输入的是数字的时候返回的是int或者float型)
    value = input('(参数/提示)请输入一个整数:')
    print(value, type(value))
    

    练习1: 随机产生一个1~100的数字,输入数字如果和产生数字提示猜对并且退出,不相等则提示小了或者是大了

    import random
    result = random.randint(1, 100)
    count = 0
    while True:
        guess = int(input('请输入你猜得答案:'))
        count += 1
        if result > guess:
            print('输入结果小了')
        elif result < guess:
            print('输入结果大了')
        else:
            if count > 5:
                print('太一般了')
            else:
                print('运气好而已')
            print('恭喜你猜对了,猜了', count, '次', sep='')
            break
    

    二、列表

    • 列表\字典\元组\集合都是序列,都是容器类型得数据类型
    • 列表(list):用来存储多个数据的一种数据类型,里面存储的单个数据叫做元素
    • 特点:1.有序 2.可变的(内容个数和值都可改变) 3.元素可以是任何类型的数据
    • 列表的值:用[]将元素括起来,多个元素之间用','隔开. []->空列表

    1.声明一个列表

    list1 = []  # 创建一个空列表  声明一个变量赋列表值
    print(type(list1))
    list2 = [1, 12.3, 'asdd', [1, 2, 3, 'a'], True, {'a': 1}]
    print(type(list2), list2)
    list3 = list('aaaa')  # 将其他变量转换成列表 整型/浮点型/布尔型不能转换为列表
    print(type(list3), list3)
    list4 = list(i * 2 for i in range(10))  # 通过生成式声明列表
    print(list4)
    list5 = list(i for i in range(10) if i % 3 == 0)
    print(list5)
    

    2.获取列表的元素

    • 列表中的每个元素都对应一个下标:0列表长度-1/-1-列表长度

    注意:下标不能越界

    names = ['科比', '欧文', '韦德', '名人', '姚明']
    print(names)
    

    a. 获取单个元素: 列表名[下标]

    print(names[-1])
    

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

    • 列表名[起始下标:结束下标]左闭右开: 从起始下标开始到结束下标之前的元素,结果还是列表
    • 列表名[起始下标:结束下标:步进]:从起始下标开始,每次下标值加步进获取下一个元素,直到结束下标前为止
    • 起始下标和结束下标都可以缺省.如果步进是正数,起始下标缺省是从0开始,如果为负则从最后一个开始,如果步进是正数,结束下标缺省是从最后开始,如果为负则从第一个开始
    print(names[1:3])
    print(names[-4:-1])
    names[:]  # 从列表中获取所有元素创建一个新的列表
    

    c.遍历列表

    scores = [59, 58, 57, 56, 88, 55, 53, 50]
    count = 0
    for i in scores:  # for循环遍历
        if i < 60:
            count += 1
    print(count)
    

    3.获取列表的长度: len(列表)

    i, count = 0, 0
    while i < len(scores):
        if scores[i] < 60:
            count += 1
        i += 1
    print(count)
    

    三、添加列表元素

    1.append()函数添加元素

    • 列表.append(元素)
    • 在列表的末尾添加一个元素
    skills = []
    skills.append('单手暴扣')
    
    skills.append('单脚起跳基础扣篮')
    

    2.insert函数

    • 列表.insert(index,元素)
    • 在指定下标前添加元素
    • 注意:index可以越界,会插入到最前/最后
    skills.insert(1, '战斧式扣篮')
    

    3.+拼接列表

    • 列表1+列表2
    • 将列表2中的元素与列表1的元素合并,创建一个新的列表
    skills += ['传奇德雷克勒斯', '传奇乔丹']
    print(skills)
    

    练习1:从控制台输入10个学生的成绩,保存到列表中

    grades = []
    for _ in range(10):
        grade = float(input('>>>'))
        grades.append(grade)
    print(grades)
    

    四、删除列表元素

    注意:不管是添加元素还是删除元素,都会重新分配下标,下标不能越界

    1.del 语句

    • del可以删除任何数据
    • del 列表[下标]:删除列表中指定下标的元素
    names = ['狗蛋', '二傻', '狗剩', '蠢蛋', '二比', '大狗', '二狗', '铁蛋', '二傻']
    
    del names[4]
    

    2.remove方法

    • 列表.remove(元素):删除列表中的指定元素(如果有多个相同元素,只删第一个)

    注意:如果删除的元素不存在,则会报错

    names.remove('二傻')
    print(names)
    

    3.pop方法

    • 列表.pop():弹出最后一个元素
    • 列表.pop(下标):弹出指定下标的元素

    注意:下标不能越界

    name = names.pop()
    print(names, name)
    name = names.pop(2)
    print(names, name)
    

    练习1:删除所有成绩小于60分的成绩

    scores = [21, 23, 50, 89, 92, 5, 35, 89, 92, 99]
    
    for i in scores[:]:
        if i < 60:
            scores.remove(i)
    
    print(scores)
    

    总结:

    最后切片虽然每次循环在更新,但是实际上for用的list是第一次的结果

    相关文章

      网友评论

          本文标题:2018-07-20 day05

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