Python的数据类型可以划分为不可变数据类型和可变数据类型,可变数据类型和不可变数据类型的区别是什么?什么叫做可变/不可变的数据类型。下面通过一些实例来对这个概念进行解释:
注意(观察内存地址的变化)
示例1:字符串
#对字符串进行替换操作
输出结果:
通过输出结果,我们可以看出对字符串s1进行替换操作,不会影响字符串s1本身,而是形成了新的字符串,新的字符串为 s1.replace('zjk','china')
示例2:列表
#对列表进行增加操作
通过输出结果呢,我们可以看出对列表进行增添操作,其列表本身会发生变化,列表l1最终变成了[1,2,3,4,5,6],并没有生成新的列表。
结论:上述分析可知,所谓不可变数据类型,在于无论你对其进行什么操作,都会重新创建一个新的,例如如果你对字符串中的元素进行操作,就会重新生成新的字符串,但是原来的字符串本身不受影响。反之,对于可变数据类型而言,对其进行的任何操作,都是自原先基础上进行,并不会生成新的。
int型(数字)
数字类型较为简单,这里不做介绍.
布尔值(bool)
True 真
False 假
关于布尔值,这里我们需要知道几个类型转换
1:字符串类型如何转换成布尔值型,非空字符串转换成bool型为True,空字符串转换为bool型为False
2:数字类型如何转换成布尔值型,数字0转换成bool型为False,非零数字转换成bool型为True
元组(tuple)
元组,称为不可修改列表,也叫只读列表,里面的元素不可以进行修改,因而往往一些很重要的数据,会以元组的形式进行存储。即:可以被查询(循环查询,切片),但是不可更改。
示例1:
输出结果,证明确实无法对元组的元素进行修改。
这里也涉及到一个问题,加入元组里面的元素是一个不为空的列表,那么列表中的元素可以进行修改么?
下面我们通过示例,对上述问题进行解答:
我们发现可以对元组里面列表中的元素进行修改。
结论:假如将元组的元素比作儿子,列表中的元素即为孙子,对于元组而言,也就是儿子不能修改,但是孙子可以进行修改。
元组常用的方法就是公用的方法:len()计算其长度,切片操作,循环取值,按照元素的索引进行查询。
查找某一元素的索引 .index()方法
字符串(str)
字符串,元组,列表,字典都拥有的公共方法如下所示,我们接下来对于公共方法就不在举例了
1:len()计算其长度, :2: 切片操作, :3:循环取值, :4:按照元素的索引进行查询。5,计算某个元素出现的次数
------------------------------------------------
常用方法总结图:
公共方法:
注:方法中包含 start=None ,end=None 可切片
其他
字母大小写,大小写翻转等
示例:(在验证码校验的时候可能会遇到上述大小写转换的方法)
*判断字符串前三位是不是由什么组成的(以什么开头?或者结尾)*
关于.startwith(),以及endwith()方法说明:
显然支持切片操作:对字符串进行截取之后,在进行判断。
字符串转换成列表
#查找某一个元素所对应的索引。 返回元素下标(索引)
find和index都是通过元素找索引,两个有什么区别?
相同点:均支持切片操作
不同点:find找不到会返回-1,index找不到元素会报错,一般推荐用find方法
#替换操作
# strip,rstrip从右删),lstrp从左删 方法 (删除空格)
#填充 center 居中空白填充
#formate
#is 系列
目录
Python常见的数据类型和方法都有哪些?
不可变数据类型和可变数据类型分别包含哪些数据类型?
不可变数据类型:
int型(数字)
布尔值(bool)
元组(tuple)
字符串(str)
可变数据类型
列表(list)
字典(dict)
集合(set)
列表(list)
常用方法总结图:
字符串,元组,列表,字典都拥有的公共方法如下所示,我们接下来对于公共方法就不在举例了
l = [1,2,3,4,5,6]
1:len()计算其长度, :2: 切片操作, :3:循环, :4:按照元素的索引进行查询。5,计算某个元素出现的次数l.count()
#列表的增删改查
#01列表的增加
----
insert方法按照位置去插入,里面涉及两个参数,第一个参数是元素要插入的位置(索引),第二个参数是你要插入的元素。
---
extend 迭代的进行添加
注意的是extend方法里面的参数必须是可迭代的,哪有人就会有疑问到底什么事可迭代的,反正你记住Int类的是不可迭代的
,如果你extend里面的参数是数字的话,那么就会出现下面的错误。即,extend里面的参数不能是int型。
#02列表的删除操作:包含两个,第一 pop方法按照索引(位置去删除),第二个 remove按照元素去删除.
pop方法
pop方法中如果没有参数,那么会默认删除最后一个元素,l.pop(3)的意思是删除列表中索引为3的元素。
-----
remove方法
值得注意的点:
在实际的开发应用中,我们有时并不知道要从列表中删除的值所对应的位置,也就是你只知道要删除的元素是什么,但是元素处于什么位置,你并不知道,这个时候,适合用remove方法去实现删除功能。
# 清空列表 clear方法
#删除列表,del
我在学习的过程中,曾经混淆了,删除和清空的概念,清空的意思是,将列表中的元素进行清空,返回的是一个空列表,但是删除列表的话,是相当于没有了,因此返回的结果只能是列表没有定义,两个概念,要记得区分。
除此之外呢:del方法可以按照切片去删除某个或某段元素。
示例:
#03 列表的改操作
将某个元素直接进行赋值,实现了改的操作
按照切片去改 进行拆分之后,迭代的去添加
04:列表的查找操作:
按照索引查找单个元素,index方法,里面参数为索引
---------------------
最重要的是要学会 按照切片的方式去查找
示例:只想查找列表前三个元素怎么办??
# 05 列表的反转------------- reverse方法:
#06 列表是有序的,也就是里面的元素可以进行排序 sort方法
sort默认是按照升序的方法排序,如果你想从大到小,降序输出怎么办?我们只需要改一下参数
关于排序,我们有的时候需要排序,但是同样需要排序之后,又能保持原有的顺序,这个时候sorted更好。
#列表是可以嵌套的,也就是列表里面继续嵌套列表
示例:如何查找出元素‘c’
关于列表嵌套,按照索引找到这个嵌套,如果是字符串按照字符串的方法对其进行操作。
# 07 列表如何转换成字符串??? join方法
*列表相加
----------------------------------------
列表完结篇:
列表和元组到底有什么区别??
相同点:都可以按照索引去查找元素
不同点:列表是可变数据类型,元组是不可变数据类型,与列表相比元组的内存更小,当拥有大量元素的时候,元组要比列表快。
----------------------
字典(dict)--字典的键必须是不可变数据类型,值可以是任意数据类型
字典主要用于存放大量的关系型数据,
常用方法总结图
# 01 字典的增加操作------------- 直接赋值或者是setdefault
直接赋值:有就覆盖,没有就添加到字典后面
setdefault:如果字典有那就不变,没有就添加
#02 字典的删除操作----------pop方法 popitem方法
pop方法有返回值,按键去删除,字典的键其实就相当于是列表的索引
popitem方法 随机删除,有返回值,返回值是元组,元组里面是删除的键值
在调用pop方法的时候,如果你删除的这个键值对,字典里面没有怎么办??答案是 会报错
但是我们可以在pop第二个参数设置返回值。
#03 清空字典----------clear方法
#03-1 删除字典-------------del方法
#04 字典的改操作-----------直接赋值或者update方法
将dic1中的所有键值对更新到dic2中,所谓更新的意思,就是有就覆盖,没有就添加
#05 字典的查操作------------按照键进行查找,遍历字典循环
字典的键就是列表的索引,按照键查询相当于按照索引去查询。
循环字典取值: 写字典名字 默认打印键
注:关于查询 查询的键没有怎么办??
场景:假如想从一个字典中获取一个键值对,但是并不知道是否字典中存在这个键值对,所以尽量用get
get用法与之前pop方法差不多,加入没有此键能够防止报错,要比直接拿着索引去查,报错要强。
#06 字典的嵌套--------考虑字典里面嵌套列表的情况
集合(set)(元素去重必备)
字符串,元组,列表,字典都拥有的公共方法如下所示,我们接下来对于公共方法就不在举例了
1:len()计算其长度, :2: 切片操作, :3:循环, :4:按照元素的索引进行查询。5,计算某个元素出现的次数
集合最重要的就是去重 :
示例:列表中的元素有重复的元素,怎么办
补充:复数类型:
关于python复数类型
到此这篇list转字符串用逗号隔开(list转字符串逗号隔开并加单引号)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/bcyy/24906.html