四、数据类型

一、数字类型

整型 int

浮点型 float

总结:1、数字类型只能存一个值; 2、整型数字类型是不可变类型:值变,id不变

内置方法:

bin()  把十进制转成二进制

oct()  把十进制转成八进制

hex()  把十进制转成十六进制

 

二、字符串类型 str

包含在引号(单引号、双引号、三引号)内的一串字符

用途:用来表示描述性的数据,比如姓名、住址、学历…

字符串支持字符串的拼接:加法+(尽量不要用,效率低)、乘法*

可以循环取值,for循环     for a in b:

 

内置方法:

[]   通过索引获取字符串的中的字符,按索引取值(正向取+反向取):只能取

[ : : : ]   切片:顾头不顾尾,步长    [起始位置 : 结束位置 : 步长]

len()   长度(字符的个数)   len(字符串变量名)

str()   把数字转成字符串

in和not in   成员运算

.format()    格式化字符串    {}

.strip()    移除空白,去除字符串内左右两侧的空白

.lstrip()    移除左边的空白

.rstrip()    移除右边的空白

.split()   切分,把字符串用有规律的分隔符(如:,|)分开的可以切分

.rsplit()   从右开始切分

.replace()   替换

 

.lower()   小写

.upper()   大写

.startswith()     判断以什么开始

.endswith()   判断以什么结尾

' '.join()   把切分的列表拼成字符串

.isdigit()    判断是否是整数

.index()   按索引查找,找不到会报错

.find()   按区间查找

.rfind()  从右往左按区间查找

.center()   居中对齐

.ljust()    左对齐

.rjust()    右对齐

.zfill()    默认右边对齐,如果不够,用0填充

.expandtads()    指定默认空格

.capitalize()    首字母大写,大小写反转

.swapcase()   大小写反转

.title()   首字母大写

.isdigit()   判断字符串是否由数字组成,只能判断bytes和unicode中的阿拉伯数字,最常用

.isdecimal()    判断字符串是否由数字组成,只能判断unicode中的阿拉伯数字 

.isnumberic()   判断字符串是否由数字组成,可以判断unicode、中文数字、罗马数字中的数字

.istitle()   判断字符串是否是由首字母大写组成

.isalpha()    判断字符串是否全由字母组成

.isalnum()   判断字符串是否由字母或数字组成

.ispace()   判断字符串是否由空格组成

 

总结:字符串只能存一个值,有序,不可变类型

 

三、列表类型 list

在中括号 [] 内,可以存在多个值,用逗号分隔多个值,值可以是任意类型,取值时按索引取

循环:1、依赖索引的循环; 2、不依赖索引的循环,for循环     for a in b:

内置方法:

[]   按索引取值(正向取+反向取),可以取,也可以改

[ : : : ]   切片:顾头不顾尾,步长     [起始位置 : 结束位置 : 步长]

len()    长度(字符的个数)

in和not in   成员运算

.append   在列表的最后追加元素,只接受一个参数

.pop   按索引删除,不加参数时默认删除末尾,取走一个值

.count()   统计列表的个数

.insert()   插入

.remove()   按列表成员删除,单纯的删除

.index()    按索引查找,找不到会报错

.extend()    只接受一个列表作为参数,并将该参数的每个元素都添加到原有的列表中

.sort()   排序,只能同类型直接比较大小,对于有索引值的比较是按照位置一一对应的

 

总结:列表可以存多个值,有序,可变类型

 

四、元组类型 tuple

用小括号 () 表示

可以看做是一个不可变的列表

元组可以存多个值,但只有读的需求,没有改的需求。在元素个数相同的情况下,使用元组更加节省空间

 

内置方法:

[]    按索引取值(正向取+反向取),只能取

[ : : : ]    切片:顾头不顾尾,步长    [起始位置 : 结束位置 : 步长]

len()   长度(字符的个数)

in和not in   成员运算

.index()    按索引查找,找不到会报错

.count()   统计当前元组中某元素的个数

 

总结:元组可以存多个值,有序,不可变类型

 

五、字典类型 dict

在 {} 内用逗号分隔开,每一个元素都是以 key:value 的形式,其中key必须为不可变类型(数字、字符串、元组),value可以是任意类型

字典中不能存在相同的key,而value则不必,如果同一个key被赋值两次,后一个值会被记住

相当于加强版的列表,每一个值都做了映射关系

和列表相比浪费存储空间,但存储速度快,可以和列表套着来

 

内置的方法:

按照key取值,可存可取,用中括号表示

len()   长度(字符的个数)

str()   输出字典。以可打印的字符串表示

in和not in   成员运算,判断字典的key

.keys()     以列表返回一个字典所有的键

.values()   以列表返回一个字典所有的值

.items()    以列表返回可遍历的(键,值)元组数组

 

.get()    从字典里面取值

.popitem()   随机返回并删除字典中的一对键和值

.fromkeys()    快速的造一个字典

 

总结:列表可以存多个值,无序,可变类型

 

六、集合类型 set

{} 内用逗号分隔开一个个元素

作用:去重,关系运算

集合内没用重复的元素,所以可以去重。集合内的元素必须是不可变类型

 

&  交集:取两个集合共同的部分

|   并集:把两个集合合到一起,去掉重复

-   差集:s1-s2两个部分相减,结果存于s1而不存于s2 的元素集合

^   补集:去掉两个集合共同的部分,剩下的部分合到一起

父集:父包含子

 

总结:集合可以存多个值,无序,可变类型

 

七、布尔类型 bool

True、False,用途:判断、逻辑运算

 

所有的数据类型自带布尔值,只有三种类型的值为False(0,None,空),其余全部为True

 

可变类型与不可变类型

可变:值改变,但是id不变。或在id不变的情况下,值可以变。可变类型:列表、字典、集合
不可变:值改变,id也变。不可变类型:数字、字符串、元组

posted @ 2018-04-02 18:14  字符编码  阅读(178)  评论(0编辑  收藏  举报