python学习之列表
容器型类型
用一个变量可以保存多个数据
列表(list)
元组(tuple)
集合(set)
字典(dict)
认识列表
- 列表是python提供的一种容器型数据类型;以[]作为容器的标志,里面多个元素用逗号隔开.
[元素1,元素2,元素3 ,元素4,…] - 列表中的元素可以是任何类型的数据;同一个列表中的元素种类可以不一样
如下:
#list1是一个空列表
list1 = []
print(list1)
rules =['嘿嘿', '哈哈', 1, 2]
print(rules)
nums = [1, 2, 2, 3]
print(nums)
结果
[]
['嘿嘿', '哈哈', 1, 2]
[1, 2, 2, 3]
列表的操作
查(获取列表元素)
#获取单个元素:下标
nums = [1, 2, 3, 4, 5]
print(nums[2])#正向遍历,最开始的元素下标为0,输出下标为2的元素,对应为3
print(nums[-1])#反向遍历,最后一个元素对应下标为-1,对应为5
结果
3
5
注意:下标不能越界
#获取部分元素:切片 [开始下标:结束下标: 步长]
nums = [1, 2, 3, 4, 5]
print(nums[1:5:2])
print(nums[4:1:-1])
print(nums[::2])#从下标为0的元素开始,到最后一个元素结束,步长为2
结果
[2, 4]
[5, 4, 3]
[1, 3, 5]
列表的遍历
nums = [35, 98, 12, 27, 66]
#直接遍历获取元素
for num in nums:
print(num)
#枚举:有两个值,索引和值
for i, x in enumerate(nums):
print(i, x)
#通过遍历下标遍历列表
for i in range(len(nums)):
print(nums[i])
列表的增
- 列表.append(元素) 在列表最后增加元素
- 列表.insert(下标,元素) 在列表指定下标插入元素
nums = [35, 98, 12, 27, 66]
nums.append(100)
print(nums)
nums.insert(0, 1000)
print(nums)
[35, 98, 12, 27, 66, 100]
[1000, 35, 98, 12, 27, 66, 100]
列表的删
- del 列表[下标] : 删除指定下标的元素
- 列表.remove(元素) : 删除指定的元素
- 列表.pop()/列表.pop(下标) : 取出最后一个元素/取出对应下标的元素
注意:通过下标删除的时候,下标不能越界
names = ['小明', '小黑', '小红', '小刚', '小辉']
del names[1]
print(names)
#结果
['小明', '小红', '小刚', '小辉']
names.remove('小红')
print(names)
#结果
['小明', '小刚', '小辉']
name = names.pop(2)
print(name,names)
#结果
小辉 ['小明', '小刚']
列题
掷一颗色子60000次,统计每面出现的次数
import random
nums = [0] * 6
for _ in range(60000):
x = random.randrange(1, 7)
nums[x - 1] += 1
for i in range(1, 7):
print(f'{i}出现了{nums[i-1]}次')
输入10给整数计算平均数和方差,找出最大值和最小值
nums = []
for _ in range(10):
temp = int(input('输入数据:'))
nums.append(temp)
mean_value = sum(nums) / len(nums)
max_value = max(nums)
min_value = min(nums)
total = 0
for num in nums:
total +=(num - mean_value) ** 2
#方差--->var
var_value = total / (len(nums) - 1)
#标准差--->std
std_value = var_value ** 0.5
print(f'平均值:{mean_value}')
print(f'最大值:{max_value}')
print(f'最小值:{min_value}')
print(f'方差:{var_value}')
print(f'标准差:{std_value}')