2-1 数字处理函数、类型判断、列表链表队列栈

分类

  • 数值型
    • int、float、complex、bool
  • 序列对象
    • 字符串 str
    • 列表 list
    • 元组 tuple
  • 键值对
    • 集合 set
    • 字典 dict

数值型

数值型

  • int、float、complex(复数)、bool、都是class(类),1、 5.0、2+3j都是对象即实例
  • int:Python3的int就是长整型,且没有大小限制,受限于内存区域的大小
  • float:由整数部分和小数部分组成。支持十进制和科学计数法表示,C语言的双精度实现
  • complex:由实数和虚数部分组成,实数和虚数部分都是浮点数,2+4.2j
  • bool:int的子类,仅有两个实例True、False对应1和0,可以和整数直接运算

类型转换(built-in(内置))

  • int(x)返回一个整数
  • float(x)返回一个浮点数
  • complex(x)、complex(x,y)返回一个复数
  • bool(x)返回布尔值

数字的处理函数

  • round(),五取偶、四舍,大于五入(六入)

  • math模块、floor()地板、天花板ceil()

  • int()、//

  • 举例

    import math
    print(math.floor(2.5),math.floor(2.4999),math.floor(2.50000)) #结果为:2 2 2 
    print(math.floor(-2.5),math.floor(-2.4999),math.floor(-2.50000)) #结果为:-3 -3 -3 
    
    import math
    print(math.ceil(2.5),math.ceil(2.4999),math.ceil(2.50000)) #结果为:3 3 3
    print(math.ceil(-2.5),math.ceil(-2.4999),math.ceil(-2.50000))#结果为:-2 -2 -2 
    
    print(int(3.6),int(-2.5),int(-1.4))#结果为:3 -2 -1 
    print(int(3.6),int(2.5),int(1.4))#结果为:3 2 1 
    print(7//2,7//-2,-7//2,-(7//2))#结果为:3 -4 -4 -3 
    print(2//3,-2//3,-1//3)#结果为:0 -1 -1 
    print(round(2.5),round(2.5001),round(2.6))#结果为:2 3 3 
    print(round(3.5),round(3.5001),round(3.6),round(3.3))#结果为:4 4 4 3 
    print(round(-2.5),round(-2.5001),round(-2.6))#结果为:-2 -3 -3 
    print(round(-3.5),round(-3.5001),round(-3.6),round(-3.3))#结果为:-4 -4 -4 -3 
    
  • 上述例子表明一下规律:

    • round(),四舍六入五取偶
    • floor()向下取整,ceil()向上取整
    • int()取整数部分
    • //整除且向下取整
  • min()求最小值

  • max()求最大值

  • pow(x,y)等于x**y

  • math.sqrt() 求平方根

  • 进制函数、返回值是字符串

    • bin()转换为二进制
    • oct()转换为八进制
    • hex()转换为十六进制
  • math.pi 圆周率

  • math.e 自然常数

  • 实例

print(min(3,5,2,6,2,3,7))#结果为:2
print(max(3,6,3,26,6))#结果为:26
print(pow(2,3))#结果为:8
print(math.sqrt(49))#结果为:7.0
print(bin(20))#结果为:0b10100
print(oct(23))#结果为:0o27
print(hex(64))#结果为:0x40
print(math.pi)#结果为:3.141592653589793
print(math.e)#结果为:2.718281828459045

类型判断

  • type(obj),返回类型,而不是字符串(obj,object的缩写,目标)
  • isinstance(obj,class_or_tuple),返回布尔值(isinstance可以判断子类)(instance,实例)
  • 举例
    print(type('abc'))#结果为:<class 'str'>
    print(type(123))#结果为:<class 'int'>
    print(isinstance(6,str))#结果为:False
    print(isinstance(6,(str,bool,int)))#结果为:True
    print(type(1+True))#结果为:<class 'int'>
    print(type(1+True+2.0))#结果为:<class 'float'>
    
    type('abc')#结果为:str
    
    print(1+True)#结果为:2
    
    print(1+False)#结果为:1
    
  • type(1+True+2.0)这里面包含了隐式转换,自动将1转换为1.0,True转换为1.0

列表list

  • 一个队列,一个排列整齐的队伍
  • 列表内的个体称作元素,由若干元素组成列表
  • 元素可以是任意对象(数字、字符串、对象、列表等)
  • 列表内元素有顺序,可以使用索引
  • 线性的数据结构
  • 使用 [ ] 表示
  • 列表是可变的
  • 同个列表的每个元素可以不同
  • Python的列表是在C语言的基础上封装出来的
  • 插队和移除某个元素的效率会很低
  • 检索快
  • 列表可以表示队列(queue)、栈(stack)

列表和链表

  • 链表的存放是散乱的,检索某个元素必须从头到尾遍历,检索效率与列表相比较低,但是利于数据增删
  • 列表的是将数据按一定的顺序存放在内存空间中,检索快,数据的增删效率较低
  • 列表和链表、栈、队列都是有序的数据结构
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值