python基础 2 基本类型及操作

安稳与你 提交于 2020-02-06 00:27:19

数字类型及操作

整数类型

pow(a,b)函数

进制转换

浮点类型

运算存在不确定尾数。

0.1+0.2=0.3000000000004

原因:采用53位二进制表述浮点数。

round(x,d)函数:对x四舍五入,d是小数截取位数。

浮点数比较大小可能需要round函数辅助比较。

复数类型

数后面贴一个j代表复数。

z.real获取实部

z.image获取虚部

cmath库专门处理复数

数值运算操作符

+ - * /(是浮点数结果) //整数除(10//3=2)

% **(x**y:x的y次幂)

+= -= *= /= //= %= **=

数字类型的关系

混合运算,生成结果为”最宽“类型

  • 整数 -> 浮点数 -> 复数

混合运算注意不确定尾数

数值运算函数

abs(x) 绝对值

divmod(x,y) 商余*(x//y,x%y)

pow(x,y[,z]) 幂余,(x**y)%z,参数z可以省略 余数为了保证超大数使得运算,表示无法正常进行

round(x[,d]) 四舍五入

max(x1,x2…xn) min(…) 返回最大,最小值

int(x) 将x转化成整数,舍弃小数部分

float(x) 将x变成浮点数,增加小数部分

complex(x) 将x变成复数,增加虚数部分

集合类型及操作

集合类型的定义

  • 集合类型与数学中的集合概念一致
  • 集合元素之间无序,每个元素唯一且不重复
  • 集合元素不可更改,不能是可变数据类型

如果可变类型,如果改变成重复数据岂不是很尴尬

整数,浮点数,复数

集合创建

使用{}或set()函数创建

集合操作符

S|T 返回一个新的集合,包括集合S和T中的所有元素

S-T 返回一个新的集合 ,包括集合S但是不在T中的元素

S&T 返回一个新的集合,包括同时在集合S和T中的元素

S^T 返回一个新的集合,包括集合S和T非相同元素

S<=T 或 S<T 返回Ture/False,判断S和T的子集关系

S>=T 或 S>T 返回Ture/False,判断S和T的包含关系

增强操作符,修改原有的集合

S|=T 更新集合S,包括在集合S和T中的所有元素

S-=T

S&=T

S^=T

集合处理方法

S.add(x) 如果x不在集合S中,将x加入s

S.discard(x) 移除S中的元素x,如果x不在集合S中,不报错

S.remove(x) 移除S中的元素x,如果x不在集合中,则产生keyerror异常

S.clear() 移除S中所有元素

S.pop() 随机返回S中的一个元素,更新S,若S为空产生keyerror异常

S.copy() 返回一个集合副本

len(S)

x in S 判断S中的元素x,在返回Ture,不在返回False

x not in S

set(x) 将其他类型变量x转变成集合类型

字符串类型

索引操作

Temp[num] #第num个变量值

切片操作

Temp[num:num2] #第num到第num2的所有值

Temp[num:num2:x] #x表示步长

Temp[::-1] #使得字符串逆序

字符串类型表示

字符串的序号

  • 正向递增序号
  • 反向递减序号

特殊字符的表示

转义符的使用

字符串操作符

x+y:字符串相加

x*n或者n*x:字符x复制n次

x in s: 判断x是否在s串中

字符串操作函数

评估函数eval() 去掉参数最外侧引号(“” ‘’)并执行余下语句的函数

len(x) 返回字符串x的长度

str(x) 与eval()相反,将任意类型转化成字符串类型

hex(x) 整数x的十六进制小写形式字符串

oct(x) 整数x的八进制小写形式字符串

chr(x) 编码对应字符打印出来

ord(x) 获得字符的编码

字符串操作方法

str.lower()/str.upper() 全部字符转化大小写

str.split(sep=None) 返回一个列表,可以使用多个分隔符分割字符串。 例如:text.split(".|!|?")

使用多分割符分割注意几点:1.字符串直接操作不能顺利切割(不清楚为什么),需要调用re库,如:a = re.split(" |:|-",s) 2.注意转义字符

str.count(sub) 返回子串sub在str中出现的次数

str.replace(old,new) 替换

str.center(width[,fillchar]) 字符串str根据width居中,fillchar可选。

str.strip(chars) 从str中去掉在其左侧和右侧chars中列出的字符

str.join(iter) 在iter变量除最后元素外每个元素后加一个str #主要用于字符串分隔等,

字符串类型的格式化

槽,参数:槽与参数依次对应 (默认),或者按序号对应

#”{1}:计算机的{0}使用情况为:{2}“.format(“2020.2.2”,“C”,“使用”)

-> C: 计算机的2020.2.2使用情况为使用

: 引导符号

<填充> 用于填充的单个字符

<对齐> <左对齐,> 右对齐,^居中对齐

<宽度> 槽设定的输出宽度

< <, > <.精度 > <类型>>

逗号增加千分位符号

精度确定浮点小数精度或者字符长度

类型L确定输出类型:

  • 整数:b,c,d,o,x,X
  • 浮点:e,E,f,%

序列类型

序列类型的定义

有序号,和字符串操作类似

衍生的类型:

字符串类型

元组类型

列表类型

序列类型及操作

在这里插入图片描述

序列类型通用函数和方法

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-WBzHm36B-1580907707712)(序列类型\Image1.png)]

元组类型及操作

元组是序列类型的一种扩展

  • 元组一旦创建就不饿能修改
  • 使用()或者tuple()创建,元素间用,隔开。
  • 可以使用或者不使用小括号(函数返回,定义)

继承了序列的所有操作。

元组类型没有其他的特殊的操作。

列表类型及操作

列表是序列的一个扩展,应用广泛。

使用[]或list()创建,元素间,分割

列表中各元素类型可以不同,无长度限制

在这里插入图片描述
在这里插入图片描述

ls.sort(cmp=None,key=None,reverse=False) cmp -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序 key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。 reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。

字典类型

字典类型是”映射“的体现

  • 键值对:键是数据索引的扩展
  • 字典是键值对的集合,价值对之间无序
  • 采用{}和dict(),键值对用:表示

生成空的字典可以直接n={},而列表不可以,列表生成空的只能用set()。因为定义如此。

列表类型操作函数和方法

d.get(k,<default>) 键k存在,则返回相应值,不在则返回,<default>值

d.pop(k,<default>) 键k存在,则取出相应值,不在则返回,<default>值

d.popitem() 随机从字典d中取出一个键值对,以元组形式返回

d.clear()

len(d)

d.items() 返回可遍历的(键, 值) 元组数组,如果要对数组进行操作需要转化成列表才可以(list)

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!