美文网首页
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