python变量类型函数_python数据类型及其函数方法归纳总结

数据类型的分类:

ֺ数值型:

int ,float, complex, bool

序列对象:

字符串,列表,元组tuple

键值型

集合set,字典dict

如果按照可hash性来分类

hashable(可哈希性)

An object is hashable if it has a hash value which never changes during its

lifetime(it needs _hash_() method),and can be compared to other objects

(it needs an _eq_() or _cmp_() method).Hashable objects which compare

equal must have the same hash value.

如果 一个对象是可hash的,那么在它的生存期内必须不可变(需要一个哈希函数),而且可以和其

他对象比较需要比较方法).比较相同的对象一定有相同的哈希值

简单的说就是生存期内可变的对象不可以哈希,就是说改变时候其id()是不可变的.

不可hash的:

列表,字典,集合

可hash型:

数值型,字符串,元组

是否可hash的区别主要是 字典里面的键必须为可hash类型的

可迭代类型 (interable)

序列对象: 字符串,列表,元组tuple      还有    键值型:集合set,字典dict  都是可迭代类型

他们都可以使用( for i in 对象: ) 将其元素一 一取出,使用 len(对象) 可以求其个数

range(  ),还有生成器产生的序列 也都是可迭代类型,无法打印显示但是都能够迭代

变量名

python中如果想使用一个数据多次,需要给它一个变量名,要不然它会被使用后消失

定义方法

python中所有数据类型生成即定义,  如 a=3 ,生成int型变量3,变量名为a

a ={2,3,4},生成set型变量,变量名为a

对于列表,元组tuple,集合set,字典dict

可以通过构造函数获得

list(iterable)

tuple(iterable)

set(iterable)

dict(iterable)  构造函数中生成的对象要满足类型的定义规定,所以字典中可迭代类型要由

一个或多个二元对象构成,且每个二元对象的第一个元素要为可hash类型,否则会报错

数值型处理函数

round(),四舍六入五取偶

int()取整数部分. 强制类型转换对象为数值型或者字符串,但是字符串需要为只包含数字

min() ,max() 获取一系列数值类型中的最大和最小的数

bin(),oct(),hex()  获取一个十进制的二进制,八进制,十六进制数

使用math模块可以实现几乎所有数值类型处理   可以使用  help(math) 查看帮助信息

或取圆周率,和自然常数

math.floor() 和 math.ceil()  获取一个数的地板,天花板

math.pi

math.e

字符串的定义初始化方法一般是直接生成

str(对象)也可以用,但很少用,如果对象一般是数值型,如果是其他类型会包含它们的表示符号

(”.join(对象)  可以由其他类型生成字符串,但是需要借助到字符串)

使用help(str)可以查看到所有的字符串处理方法

可以使用索引访问字符串中的每个元素

重用的有几类,生成方法或者和格式化方法:

str(对象) -> str

“string”.join(iterable) -> str

‘string’ + ‘string’ -> str

格式化方法

“I am %03d” % (20,)

‘I like %s.’ % ‘Python’

‘%3.2f%% , 0x%x, 0X%02X’ % (89.7654, 10, 15)

“I am %-5d” % (20,)

format函数的格式化方法

“{} {xxx}”.format(*args, **kwargs) -> str

分割方法:

split,partition等

split(sep=None, maxsplit=-1) -> list of strings

排版方法:

改变大小写,居中显示等

修改方法:

删去,或修改字符

查询方法:

find,index,count等

列表的定义初始化方法

list(iterable) -> new list initialized from iterable’s items

使用help(list)可以查看到所有的列表处理方法

可以使用索引访问字符串中的每个元素

列表[index]  可以访问它的值,如果对它赋值可以修改它的值

追加   append(object) -> None

嵌入   insert(index, object) -> None

扩展    extend(iteratable) -> None

连接或者重复操作产生一个新的列表    +, -> list

删除    remove(value) -> None

删除末尾   pop([index]) -> item

清空   clear() -> None

反转  reversed() -> None

排序   sort(key=None, reverse=False) -> None

复制  copy()  -> List

元组由于是不可变类型,但是结构又比字符串复杂所有,它的操作函数很少

help(tuple) ,help(set),help(dict) 不解释

它的定义初始化方法

tuple(iterable) -> tuple initialized from iterable’s items

连接或者重复操作产生一个新的元组    +, -> tuple

元组[index]  可以访问但无法赋值修改它的值

count() 获得元素个数

set  和 dict 也是可迭代类型不同于字符串,列表,元组的是没法索引

set 的元素必须可hash类型

set初始化方法

set(iterable) -> new set object

增加元素 add(elem),update(*others)

删除元素 remove等

clear()清空

dict初始化方法

可以是一个或两个参数

dict(**kwargs),dict(iterable)

dict(iterable, **kwarg)

参数要满足严格的格式

类方法 dict.fromkeys(iterable, value)

访问

字典[key]    赋值可以修改它的值

get(key[, default])

setdefault(key[, default])  访问并修改

删除   pop(),等

模块collections中有两个非常重要的函数

collections.defaultdict([default_factory[, …]])

当定义一个defaultdict时,如果获取它的key不存在时,会获取这个工厂函数生成对应的value

collections.OrderedDict([items])

当定义一个OrderedDict时,获得的字典会按照生成它时的顺序排列

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/87713

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值