变量: 使用变量存储数据, 但是存在一个缺点: 一个变量一次只能存储一个数据(数字/字符串)
若要存储多个数据: 一般使用列表
列表本质上面是一个有序的集合.
list1= ["幻", "尼", "赫", "蒂", "龙", 123, True]
print(list1)
语法:
变量名 = 列表
列表名称 = [数据1,数据2........]
说明: 使用 [ ] 表示创建列表
列表中存储的数据为元素
列表中的元素从头到尾进行了编号.编号从0开始, 这个编号被称为下标 或者 索引 或者 角标
索引的取值范围: 0 - 元素的个数-1
超过索引的范围: 列表越界
代码演示:
# 1.创建列表
list1= [] # 空列表
# 2.带元素的列表
list2= ["光", "哈", "米", "拉"]
# 3.列表中的元素可以是不同的数据类型
list3= [12, 3.13, True, False, "hello", "路"]
# 注意: 将数据保存到列表的时候,不用考虑列表的大小,如果数据很大的话,底层会进行自动扩容.
访问方式:通过索引访问列表中的元素【有序,索引:决定了元素在内存中的位置】
list2= ["宏","弗","米","拉",True]
list2[0] # 表示第一个元素
list2[-1] # 表示最后一个元素
len(list2) # 表示获取列表元素的个数
list2[11] # 超出索引范围
语法:列表名[索引] = 值
注意:列表中存储的是其实是变量,所以可以随时修改值
代码演示:
list2= ["光","弗","车","拉",True]
# 修改列表元素 语法:列表名[索引] = 值
print(list2)
list2[2] ="天狗"
print(list2)
list3= ["麻", "墙", "白", "云"]
# 第一种方式:
foriinlist3:
print(i)
# 第二种方式: 通过索引的方式访问元素
foriinrange(len(list3)):
print(list3[i])
# 第三种方式:enumrate() 同时遍历索引和元素
forindex,valueinenumerate(list3):
print(index,value)
代码演示:
# 合并列表: 通过 + 实现
list= [12,34,6,8,3.13]
list1= ["枝","龙","桂","莲","果"]
# 通过 + 实现列表的合并 list + list1
list2=list+list1
print(list2)
代码演示:
# 重复输出列表中的元素: 通过 * 实现
list= [1,2,3]
list1=list*4
print(list1)
代码演示:
# 判断指定元素是否在列表中, 使用成员运算符检查
# in 和 not in 返回值是一个布尔类型 True和False
list1= [12,34,4.12,"haha","lele","hehe"]
print(12inlist1) # True
if"haha"inlist1:
print("字符串在列表中")
else:
print("不在列表中")
代码演示:
list2= [13,45,2,35,7,9]
# 语法: 列表名[开始下标:结束下标] 特点: 前闭后开 包含开始下标的元素不包含结束下标的元素
print(list2[1:6])
print(list2[:4]) # [13, 45, 2, 35]
print(list2[1:]) # [45, 2, 35, 7, 9]
print(list2[:]) # [13, 45, 2, 35, 7, 9]
print(list2[-2:]) # [7, 9]
Python内置的功能【函数】
用法
代码演示:
# 1.添加元素
# append() 向列表的尾部追加元素
list1= ["香", "己", "飞", "贵", "东"]
list1.append("西")
print(list1)
# extend 用于在列表末尾一次追加另一个列表中的多个元素
list1= ["香","己","飞","贵","东"]
list1.extend(["乾隆","商纣王","汉昭帝","唐玄宗"])
list1.extend("秦始皇") # "秦" "始" "皇"
print(list1)
# insert() 在列表中指定的索引处插入元素,后面的其他的元素依次后延
list2= ["秦始皇","汉武帝","曹操","刘备","孙权"]
list2.insert(1, "刘邦")
print(list2)
# 2. 删除元素
list2= ["秦始皇","汉武帝","曹操","刘备","孙权"]
# pop() 传输的参数是下标 不传参数的时候,默认移除最后一个元素,返回的是原列表
list2.pop() # ["秦始皇","汉武帝","曹操","刘备"]
list2.pop(2) # ['秦始皇', '汉武帝', '刘备', '孙权']
print(list2)
# remove() 传输的参数是指定移除的元素
list2.remove("刘备")
print(list2)
# clear() 清空列表
list2.clear()
print(list2) # []
# 3.获取元素
list= [12,34,2,5.23,True,False,"hello"]
# print(len(list)) # len 获取列表的长度
# 获取列表中的最大值 max()
list1= [12,3,4,32,98,14,3,78,3,34,3]
print(max(list1))
# 获取列表中的最大值 min()
print(min(list1))
# 获取指定元素的索引 index(元素名称)
print(list1.index(98))
# 4.其他用法
# 列表的其他用法
list= [12,42,34,16,87]
# reverse 翻转列表元素 注意:在原列表的内部进行翻转,不会生成新列表
list.reverse()
print(list)
# sort() 对原列表元素进行排序 默认是升序 不会生成一个新的列表
# 升序
list.sort()
# 降序 在sort函数中传入reverse=True 实现降序
list.sort(reverse=True)
print(list)
# sorted() 对列表元素进行排序,默认是升序, 排序的结果会生成一个新列表
# 升序
list1=sorted(list)
# 降序 传入reverse=True
list1=sorted(list,reverse=True)
print(list1)
可以处理Python中任意大小的整型
代码演示:
# int 整型
num1=10
num2=23
print(num1,num2)
print(type(num1))
由整数部分和小数部分组成
注意:浮点数在计算机中运算的时候可能会出现四舍五入
# float 浮点型(小数) 注意:浮点数在计算机运算过程中可能会出现四舍五入的情况
float1=3.13
print(type(float1))
abs(x): absolute 求x的绝对值
abs(-10) # 10max(): 求最大值
max(23,13,7,89,34)min():求最小值
min(23,13,7,89,34)pow(n,m):求一个数的多少次幂
print(pow(2,3))round(x,n):返回浮点数x的四舍五入值,如果给出n值,则表示舍入到小数点后几位
# round(x,n) 表示返回浮点数x的四舍五入的值 如果传入了n,表示的是保留的小数的位数
print(round(78.12345)) # 78
print(round(78.82345)) # 79
print(round(78.12345,3)) # 78.123
导入math模块,math.功能名()
importmath#导入math模块代码演示:
importmath# 导入math模块
# 使用的格式 math.功能名()
# 向上取整 math.ceil()
n1=19.23
print(math.ceil(n1))
# 向下取整 math.floor()
print(math.floor(n1))
# 开平方
n2=9
print(math.sqrt(n2))
代码演示:
importrandom# 导入random模块
# 1. random.choice(): 从指定列表中随机选择一个元素
num=random.choice([12,34,21,78,25,8.23])
print(num)
# 使用range
list1=random.choice(range(5)) # 等价于 [0,1,2,3,4]
print(list1)
# 使用字符串
str1=random.choice("hello")
print(str1)
# 2. random.randrange(start,end,step) :生成一个指定范围内的随机数
'''
start:指定范围内开始的值,默认是0
end:指定范围内结束的值,(不包含)
step:步长,指定的递增基数 默认值是1
'''
print(random.randrange(1,10)) # 随机生成一个1-10之间的数字
print(random.randrange(1,101,2)) # 随机生成一个1-100之间的奇数
# 3. random.randint(start,end) :生成一个指定范围内的随机数
print(random.randrange(1,10)) # 随机生成一个1-10之间的数字,包括1和10
# 4. random.random() 随机生成一个0-1之间的数字 结果是浮点数
print(random.random())
# 5.random.shuffle() 将列表中的元素进行随机排序
list1= [12,8,23,11,85]
random.shuffle(list1)
print(list1)