1.列表
1.列表的数学运算: +,*
"""
列表1 + 列表 2 - 将两个列表中的元素合并产生一个新的列表;(不会修改原列表)
列表 * N,N * 列表 - N是正整数;列表中的元素重复N次产生一个新的列表
"""
2.列表1 == 列表2 , 列表1 != 列表2 , > (依次比较同一个位置的元素值的大小,依次类推,直到同一位置比较出大小结束), < , >= , <=
list2 = [1,2,3]
list3 = ['1','2','3']
补充: is的用法 -> 判断的是地址是否一样(相当于id(列表一) == id(列表二)) == -> 判断的是数据的值是否一样
3.in 和 not in
"""
元素 in 列表 - 判断列表中是否存在指定的元素
元素 not in 列表 - 判断列表中是否不存在指定的元素
"""
4.max(序列),min(序列),sum(序列),len(序列)
"""
max 和 min 要求序列中的元素类型必须一致;并且元素支持比较运算符
sum要求序列中的元素是数字
list(序列) - 只有容器型数据类型才能转换成列表,将序列中的元素作为列表的元素产生一个新列表
"""
print(min([23,45,78,90,32,45]))
2.元组
1.列表.count(元素) - 统计列表中指定元素的个数
2.列表.extend(序列) - 将序列中的元素添加到列表最后,没有返回值
num = [2,1,3]
num.extend([10,20])
print(num)
num.extend('abc')
print(num)
3.列表.index(元素) - 获取元素在列表中的下标,如果有多个只取第一个,元素不存在会报错。
4.列表.reverse() - 让列表倒序(不会产生新的列表)
5.排序 列表.sort() - 将列表中的元素从小到大排序, sort(reverse = True) - 将列表中的元素从大到小排序
"""
注意:列表中的元素类型必须一样,并且元素支持比较运算符;不会产生新的列表
"""
6.内置函数: sorted
"""
sorted(序列) - 对序列中的元素从小到大排序,返回一个新的列表
sorted(序列,reverse = True(降序))
"""
7.清空列表
"""
num.clear()
如果使用num = []:将会创建一个新的空间,不赞成使用。
"""
8.列表.copy() - 和切片的效果是一样的,复制列表中的元素,产生一个新的列表。这个拷贝是浅拷贝。
print(sorted(num))
print(num)
new_nums2 = num.copy()
"""
浅拷贝的方法:copy(),切片,列表乘以1,列表加空列表,列表转化列表。
"""
3.元组
1.什么是元组(tuple)
"""
元组就是不可变的列表
1)
元组是容器型数据类型(序列),将()作为容器的标志,多个元素用逗号隔开:(元素1,元素2,元素3.。。。)
特点:不可变(不支持增删改),有序的(支持下标操作)
2)
元组中的元素 - 和列表要求一样
"""
1.元组的表示
"""
1)单个元素的元组:(元素,)
tuple1 = () # 没有意义
tuple1 = (1) # 此时表示()用法.不是元组
2)单独表示一个元组的时候,小括号可以省略
tuple3 = 1,2,3,4
print(tuple3)
"""
2.获取元组中的元素
"""
列表中获取元素的方式元组都支持;注意,切片的结果是元组
1)获取单个元素
2)切片
3)遍历
4)获取部分元素:变量1,变量2,变量3,。。 = 元组(用变量去获取元组中元素的值,要求前面变量的个数和元组中元素的个数一致)
列表也可以操作
5)语法:多个变量某一个变量前带 = 元组
让没有带的变量先去元组中取值,然后将剩下的值全部取给带的变量。
"""
tuple1 = '周一','周二','周三','周四'
print(tuple1[1],tuple1[-1])
*y1 ,y2, y4 = tuple1 # 解压赋值,多个值为一个列表
print(y1,y2)
4.数字
math是标准库(python内置的模块),提供和数学算法相关的方法
python中数字相关的类型有:int(整型),float(浮点型),bool(布尔),complex(复数)
"""
1.整型
所有的整数对应的类型就是整型,python3.x中对应的数据类型只有int,python2,x除了int还有long
int(数据) -> 将数据转换成整数。所有的小数,布尔值和部分字符串可以转换成整数
字符串中只有去掉引号后本身就是一个整数的字符串才能转换成整型
如果int()括号里面没有值转换成0,list(),tuple()括号里没有值转换为空列表和空元组
"""
print(int(3.99)) # 保留整数部分
print(int(True),int(False)) # 1 , 0
print(int('45'),int('+100'),int('-123'))
2.浮点型
"""
所有的小数对应的类型就是浮点型,浮点型对应的数据类型只有float。支持科学计数法:3e4,1.25e2,2e-3
float(数据) - 整型,布尔和部分字符串可以转换成浮点型 ,当字符串去掉引号为数字的字符串才能用float()转换
"""
print(3e4)
print(1.25e2)
print(2e-3)
print(float(100)) # 加一位小数点
print(float(True))
print(9.9/3) # 输出不等于3.3是正常的,是因为计算机对小数的存储不精确
3.布尔
"""
布尔值的本质是整数,true是1,false是0
bool(数据) - 所有的数据都能转化为布尔,所有为0为空为None的值都会转换为False,其他都是True
python中if判断空值 if not nums:当nums为0为空才执行
"""
num = 10
if not num % 2:
print('偶数')
if num % 2:
print('奇数')
4.复数
"""
由实部和虚部组成的数字叫复数: a + bj(a是实部,b是虚部 ,j是虚数单位 ,j和j相乘是-1),对应的类型是complex;python直接支持复数的运算
"""
a = 10 + 20j
b = 2 + 3j # 虚部是1不能省略
print(a / b)
5.math模块
"""
math.方法名
"""
import math
print(4**0.5)
5.随机数
python内置了一个模块叫random,提供了和随机操作相关的方法
"""
1)random.randint(M,N) - 产生一个M-N的整数 包含M,N
2)random.random() - 产生 0-1 的随机数(小数) 不包含1,0可以取到
3)random.randrange(M,N,step) - 产生序列range(M,N,step)中的任意一个整数,不包含N
4)random.choices(序列) - 在序列中随机获取N个元素,以列表的形式返回,结果是一个列表,k = N(随机产生N个数,默认是1)
5)random.shuffle(列表) - 随机打乱列表中列表元素的位置
"""
import random