Python基础学习04

Python基础学习04

在这里插入图片描述

本节内容
  • 初步感知列表数据类型
  • 列表的定义
  • 对列表常用的操作
  • 常用内置函数
  • 案例应用

背景

  • 前面我们学过的数据类型包括整数(integer)、浮点型(float)、字符型(string)、布尔型(Boolean),

    这些类型以经无法在满足我们后期编程需求。

  • 上述类型定义的变量,在大多数场景以及无法满足

  • 例如,需要统计抛两个色子1000次并记录每两个色子和的情况出现的次数

import random
# 记录2~12每一种情况出现的次数用字母a~l变量记录
a, b, c, d, e, f,h,i,j,k,l= 0, 0, 0, 0, 0, 0,0,0,0,0,0
for _ in range(60000):
    num1 = random.randint(1, 7)
    num2 = random.randint(1, 7)
    if num1+num2 == 2:
        a += 1
    elif num1+num2 == 3:
        b += 1
    elif num1+num2 == 4:
        c += 1
    elif num1+num2 == 5:
        d += 1
    elif num1 +num2== 6:
        e += 1
    elif num1+num2==7 :
        f+=1
    elif num1+num2==8 :
        h+=1
    elif num1+num2==9:
        i+=1
    elif num1+num2 ==10 :
        j+=1
    elif num1+num2 ==11:
        k+=1
    else:
        l+=1

上述代码其实并不难,大部分都在写重复的代码。这样的代码看起来非常不美观,变量多到后期修改也会造成大量的负担。

  • 对上述代码的改进
import random
# 计数1~6每一个值出现的次数
# fs = [0, 0, 0, 0, 0, 0]
fs = [0]*6  # 列表的重复运算
for _ in range(60000):
    face = random.randrange(1, 7)
    fs[face - 1] += 1  # 出现对于值加1

实现和上面一样的功能,从代码量看起来就少了许多。同时,这里只定义了1个变量来存储统计,代码看起来更加直观。

初步感知列表数据类型

  • 容器型数据类型(用一个变量保存多个数据)

  • 变量命名规则,英文单词加复数形,表示一个容器型数据类型

  • 序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

  • Python有6个序列的内置类型,但最常见的是列表和元组。

列表的定义

  • 创建一个列表,只要把逗号分隔的不同的数据项使用方括号括起来即可。如下所示:
# 创建一个空列表
l=[]
# 列表中的元素用英文下的","隔开
l=['中国''我','爱''你!']
# 列表的重复运算
l=[0]*10

对列表常用的操作

  • 列表的遍历
# 定义一个列表
nums=[1,2,3,5,3]
# 用type()查看数据类型
print(type(nums))
# 一次性输出
print(nums)
'''
打印结果如下:
<class 'list'>
[1, 2, 3, 5, 3]
'''
  • 利用循环一个个打印
# 方法一
# 只读循环、不可以修改
for num in nums:
    print(num)
# 方法二
# len()函数获取列表中元素给个数
for i in range(len(nums)):
    nums[i]=100
# 方法三

# 通过enumerate()函数对列表进行预处理
# 可以同时获取元素的索引(index)和元素(values)
for i, x in enumerate(nums):
    print(i + 1, x)
  • 对列表中元素的修改
# 通过小标索引对元素的修改,下标元素索引从零开始到个数减一结束

l=[1,2,3,4,5]
# 对第3个元素修改
l[2]=5

常用内置函数

  • 以下是列表常用方法

在这里插入图片描述

  • append()函数对列表进行追加,加入一个新的元素到列表末尾
nums=[1,2,3,5,3]
nums.append(6)
print(nums)
# [1, 2, 3, 5, 3, 6]
  • pop()函数默认删除列表最后一个元素
nums=[1,2,3,5,3]
nums.pop()
print(nums)
# [1, 2, 3, 5]
  • count()函数统计列表中某个元素出现的次数,没有返回0
nums=[1,2,3,5,3,3,3,]
print(nums.count(3))
# 4
  • 对列表中元素进行求和
nums=[1,2,3,4,5]
print(sum(nums))
# 15
  • 求列表中元素最大、最小值
nums=[1,2,3,4,5]
print(max(nums)) # 5
print(min(nums)) # 1

对于其它列表操作用法,在用的时候在进行详细了解即可

案例应用

  • 输入10个整数计算平均值、方差、标准差、最大值、最小值
# 描述性统计--> 可以获得总体的情况
# 推断性统计--> 只能获得样本,通过样本去推断总体
# 方差-->variance
# 标准差--> standard deviation --->std/stdev
nums=[]
for _ in range(10):
    num=int(input('输入:'))
    nums.append(num)
# 最大值
min_value=min(nums)
# 最小值
max_value=max(nums)


total=0
for num in nums:
    total+=num
# 平均值
mean_value=total/len(nums)

# 极差
poor = max_value-min_value

# 方差
total=0
for num in nums:
    total+=(num-mean_value)**2
var_value=total/(len(nums)-1)

# 标准差
std_value=var_value**0.5
print(nums)
print(f'最大值:{max_value}  最小值:{min_value}')
print(f'平均值:{mean_value}  极差:{poor}')
print(f'标准差:{var_value:.3f}  方差:{std_value:.3f}') # :.3f表示保留三位小数

总结

列表数据类型在以后编程应用的十分广范列表非常的灵活,它可以存储任意类型的数据类型!最后,对于初学者一定要通过大量练习来感知列表的灵活性。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值