一、数值型
1、int
int(x)
返回整数类型。就是python的长整型,且没有大小限制,受限于内存区域的大小。
int('a',16)
# 返回值 10
2、float
float(x)
返回浮点数类型。由整数部分和小数部分组成。支持十进制和科学计数法表示。C的双精度型实现。
3、complex
complex(x) complex(x,y)
返回一个复数。由实数和虚数部分组成,实数和虚数部分是浮点数。eg:3+4.2J
4、bool
bool(x)
返回布尔值。int的子类,仅有2个实力Ture、False对应1和0,可以和整数直接运算。
等价False的对象空字典,空元组,空列表,空集合,空字符串,none,0。
1+False
# 返回值 Ture
二、数字的处理函数
1、整除
1//2,3//2,5//2
# 返回值(0,1,2)
-1//2,1//-2
# 返回值(-1,-1)
int(x/x) #截取整数部分
整除向下取整。
2、math模块
import matg # 导入模块
math.floor(x/x) # 向下取整
math.ceil(x/x) # 向上取整
math.sqrt(3) #开方
# 返回值 1.732050807508075688772
math.log2(4)
# 返回值 2.0
3、round
round(0) # 圆整 四舍六入五取偶
eg
round(2,5)
# 返回值2
round(-2,5)
# 返回值-2
三、类型判断
type
返回类型,而不是字符串。
type(1) # 你是什么类型
# 输出为 int
type(1) = int
# 输出结果为 Ture
isinstance
isinstance(obj,class_or_tuple) # 返回布尔值
isinstance('abc',str) # bool 'abc'是否为str
# 输出为 Ture
isinstance('abc',(str,int,list))
#返回值为 Ture
四、列表list
列表 list 在内存中连续的结构 在数据尾部的更改没有影响,定位速度快可以插入元素,移除元素。容器都为可迭代对象。正索引从开始 负索引从-1开始 列表可变。
链表 linked list
链表 linked list 单向链接,除值本身还有下一个值的地址 ,找第几个需要数,增减数据比较困难 上一个知道下一个在哪里,检索困难。
栈stack
栈stack 摞盘子 后进先出LIFO (last in fast out)
队列queue
队列queue 有栏杆的排队 先进先出 不能删除增加数据 基于列表或链表来实现, 遍历 所有那一遍 不重复。
五、列表查询
1、index
index(value,[start,[stop]])
# 通过值value,从指定区间查找列表内的元素是否匹配
# 匹配第一个就立即返回索引
# 匹配不到,抛出异常ValueError
随着列表中元素的增加,这种index函数的效率下降 随着列表元素规模的增加,性能下降 有n个时间复杂度,O(n)。
2、count
count(value)
# 返回列表中匹配value
查找该元素出现过几次,会遍历找,O(n).
3、时间复杂度
index和count方法都是O(n)
随着列表数据规模的增大,而效率下降。
六、列表元素的修改
1、索引访问修改
list[index]=value
# 索引不要超界,否则会报错
l1=[1,2,3,4]
l1[2] = 100
# 输出l1结果为
# [1,2,100,4]
2、列表增加、插入元素
1、append
append(object)->None
# 列表尾部追加元素,返回None
# 返回 None就意味着没有新的列表产生,原地修改
# 时间复杂度为O(1)
l1 = [1]
l1.append(2)
# 输出l1的结果为
# [1,2]
2、insert
insert(index,object)->None
# 在指定的索引index处插入元素object
# 返回None就意味着没有新的列表产生,就地修改
# 时间复杂度是O(n)
# 索引超上界,尾部追加
# 索引超下界,头部追加
l1 = [1,2]
l1.insert(1,0)
# 输出l1结果为
# [1,0]
3、extend
extend(iteratable)->None
# 将可迭代对象的元素追加进来,返回None
# 就地修改
l1 = [1,0]
l1.extend(range(2,5))
# 输出l1结果为
# [1,0,2,3,4]
extend 与append的区别是后者只能追加一个元素,而entend可以追加若干。
4、+ - list
l1 = [1]
l2 = [2]
l3 = l1+l2
# 输出结果l3结果为</