python中必须要会的四大高级数据类型(字符,元组,列表,字典)_python四大

做了那么多年开发,自学了很多门编程语言,我很明白学习资源对于学一门新语言的重要性,这些年也收藏了不少的Python干货,对我来说这些东西确实已经用不到了,但对于准备自学Python的人来说,或许它就是一个宝藏,可以给你省去很多的时间和精力。

别在网上瞎学了,我最近也做了一些资源的更新,只要你是我的粉丝,这期福利你都可拿走。

我先来介绍一下这些东西怎么用,文末抱走。


(1)Python所有方向的学习路线(新版)

这是我花了几天的时间去把Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

最近我才对这些路线做了一下新的更新,知识体系更全面了。

在这里插入图片描述

(2)Python学习视频

包含了Python入门、爬虫、数据分析和web开发的学习视频,总共100多个,虽然没有那么全面,但是对于入门来说是没问题的,学完这些之后,你可以按照我上面的学习路线去网上找其他的知识资源进行进阶。

在这里插入图片描述

(3)100多个练手项目

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了,只是里面的项目比较多,水平也是参差不齐,大家可以挑自己能做的项目去练练。

在这里插入图片描述

(4)200多本电子书

这些年我也收藏了很多电子书,大概200多本,有时候带实体书不方便的话,我就会去打开电子书看看,书籍可不一定比视频教程差,尤其是权威的技术书籍。

基本上主流的和经典的都有,这里我就不放图了,版权问题,个人看看是没有问题的。

(5)Python知识点汇总

知识点汇总有点像学习路线,但与学习路线不同的点就在于,知识点汇总更为细致,里面包含了对具体知识点的简单说明,而我们的学习路线则更为抽象和简单,只是为了方便大家只是某个领域你应该学习哪些技术栈。

在这里插入图片描述

(6)其他资料

还有其他的一些东西,比如说我自己出的Python入门图文类教程,没有电脑的时候用手机也可以学习知识,学会了理论之后再去敲代码实践验证,还有Python中文版的库资料、MySQL和HTML标签大全等等,这些都是可以送给粉丝们的东西。

在这里插入图片描述

这些都不是什么非常值钱的东西,但对于没有资源或者资源不是很好的学习者来说确实很不错,你要是用得到的话都可以直接抱走,关注过我的人都知道,这些都是可以拿到的。

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

I love python
True
False
False
I LOVE pYTHON
I Love Python
i love python
I LOVE PYTHON
ever gi
ver give up
Nev
Nvrgv p
pu evig reveN
p vgrvN
I lovePython
I loveI loveI love
True
‘’’


#### 二. 列表



> 
> 1. list是一种有序的集合[],可以随时添加和删除其中的元素。
> 2. 列表的下标取值/切片/是否越界与字符串一致,区别就是列表是获取元素。
> 
> 
> 


![在这里插入图片描述](https://img-blog.csdnimg.cn/20201031133953712.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjY1NDExNA==,size_16,color_FFFFFF,t_70#pic_center)


**练习**



li=[] # 空列表
li=[1,2,3,4,‘python’,True]
print(type(li))

#len函数可以获取到列表对象中的数据个数

print(len(li))

append();在列表后面追加元素

count(): 统计元素出现的次数

extend(): 扩展,相当于批量添加

index(): 获取指定元素索引号

insert(): 在指定位置插入

pop(): 删除后面一个元素

remove():移除左边找到的第一个元素

reverse(): 反转列表

sort():列表排序 reverse=True为倒序

listA=[‘abcd’,785,12.23,‘qiuzhi’,True]

print(‘--------------增加-----------------------’)

print(‘追加之前’,listA)
listA.append([‘fff’,‘ddd’]) #追加操作
listA.append(8888)
print(‘追加之后’,listA)
listA.insert(1,‘这是我刚插入的数据’) #插入操作 需要执行一个位置插入
print(listA)
rsData=list(range(10)) #强制转换为list对象
print(type(rsData))
listA.extend(rsData) #拓展 等于批量添加
listA.extend([11,22,33,44])
print(listA)

print(‘-----------------修改------------------------’)

print(‘修改之前’,listA)

listA[0]=333.6

print(‘修改之后’,listA)

listB=list(range(10,50))
print(type(listB))
print(‘------------删除list数据项------------------’)
print(listB)

del listB[0] #删除列表中第一个元素

del listB[1:3] #批量删除多项数据 slice

listB.remove(20) #移除指定的元素 参数是具体的数据值

listB.pop(1) #移除制定的项 参数是索引值
print(listB)
#beg – 开始索引,默认为0。
#end – 结束索引,默认为字符串的长度。
print(listB.index(19)) #返回的是一个索引下标

查找,跟元祖有点不一样,这是左开右闭

print(type(listA))
print(listA) #输出完整的列表
print(listA[0]) #输出第一个元素
print(listA[1:3]) #从第二个开始到第三个元素
print(listA[2:]) #从第三个元素开始到最后所有的元素
print(listA[::-1]) #负数从右像左开始输出

print(listA*3) #输出多次列表中的数据【复制】

a=[21,45,66,78]
b=[1,2]

def add100(x):
i= 0
for item in x:
x[i]=item+100
i+=1
pass
return x
pass
print(add100(b))
def add100(x):
x+=100
return x
list2=list(map(add100,a))
print(list2)
a=[21,45,66,78]
print(list(map(lambda x:x+100,a)))

def Old(x):
if x>50:
return x
pass
print(list(filter(Old,a)))
‘’'输出
<class ‘list’>
6
追加之前 [‘abcd’, 785, 12.23, ‘qiuzhi’, True]
追加之后 [‘abcd’, 785, 12.23, ‘qiuzhi’, True, [‘fff’, ‘ddd’], 8888]
[‘abcd’, ‘这是我刚插入的数据’, 785, 12.23, ‘qiuzhi’, True, [‘fff’, ‘ddd’], 8888]
<class ‘list’>
[‘abcd’, ‘这是我刚插入的数据’, 785, 12.23, ‘qiuzhi’, True, [‘fff’, ‘ddd’], 8888, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44]
<class ‘list’>
------------删除list数据项------------------
[10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49]
[10, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49]
8
<class ‘list’>
[‘abcd’, ‘这是我刚插入的数据’, 785, 12.23, ‘qiuzhi’, True, [‘fff’, ‘ddd’], 8888, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44]
abcd
[‘这是我刚插入的数据’, 785]
[785, 12.23, ‘qiuzhi’, True, [‘fff’, ‘ddd’], 8888, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44]
[44, 33, 22, 11, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 8888, [‘fff’, ‘ddd’], True, ‘qiuzhi’, 12.23, 785, ‘这是我刚插入的数据’, ‘abcd’]
[‘abcd’, ‘这是我刚插入的数据’, 785, 12.23, ‘qiuzhi’, True, [‘fff’, ‘ddd’], 8888, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44, ‘abcd’, ‘这是我刚插入的数据’, 785, 12.23, ‘qiuzhi’, True, [‘fff’, ‘ddd’], 8888, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44, ‘abcd’, ‘这是我刚插入的数据’, 785, 12.23, ‘qiuzhi’, True, [‘fff’, ‘ddd’], 8888, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 22, 33, 44]
[101, 102]
[121, 145, 166, 178]
[121, 145, 166, 178]
[66, 78]

‘’’


#### 三. 元组


1. 元组与列表类似,不同之处在于元组的元素**不能修改**。元组使用**小括号**,元组也是通过下标进行访问
2. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可。
3. 元组的内置方法:



> 
> `count`:统计元素在元组中出现的次数  
>  `index` :查找指定元素在元组中的下标索引
> 
> 
>
4. 练习



#空元组
tupleA=()
print(type(tupleA))
#元组也可以用for语句查询

tupleA=(1,2,3,‘cd’,‘a’)
for item in tupleA:
print(item,end=’ ')

元组也可以使用切片,左闭右开

print(tupleA[-2👎])#倒着取下标 为-2 到 -1 区间的

#假设元组中放入队列
tupleA=(1,2,3,‘cd’,‘a’,[11,22,33])
print(tupleA)
#可以对队列的值进行修改(原本元组是不可以修改的)
print(type(tupleA[5]))
tupleA[5][0]=5500
print(tupleA)
tupleA[5].append(‘chen’)
print(tupleA)
‘’‘输出
<class ‘tuple’>
1 2 3 cd a (‘cd’,)
(1, 2, 3, ‘cd’, ‘a’, [11, 22, 33])
<class ‘list’>
(1, 2, 3, ‘cd’, ‘a’, [5500, 22, 33])
(1, 2, 3, ‘cd’, ‘a’, [5500, 22, 33, ‘chen’])
‘’’


#### 四. 字典


1. 字典是Python的中重要的一种数据类型,可以存储任意对像。
2. 字典是以**键值对**的形式创建的`{'key':'value'}`利用大括号包裹着。
3. 访问值的安全方式get方法,在我们不确定字典中是否存在某个键而又想获取其值时,可以使用get方法,还可以设置默认值



> 
> 注意:
> 
> 
> 1. 字典的键(key)不能重复,值(value)可以重复。
> 2. 字典的键(key)只能是不可变类型,如数字,字符串,元组。
> 
> 
> 


5. **常用方法**


![在这里插入图片描述](https://img-blog.csdnimg.cn/20201031135532607.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjY1NDExNA==,size_16,color_FFFFFF,t_70#pic_center)


4. **练习**



空字典

dictA={}
print(type(dictA))

如何添加字典数据? key:value

dictA[‘name’]=‘陈运智’
dictA[‘age’]=30
print(dictA)

批量添加

dictA={“pro”:‘艺术’,‘shcool’:‘北京电影学院’,‘age’:30,‘pos’:‘xueshen’}
print(dictA)

通过键位修改值

dictA[‘pro’]=‘学生’
print(dictA)

添加更多数据

dictA.update({‘name’:‘陈运智’})
print(dictA)

获取所有键和值

print(dictA.keys(),dictA.values())
print(dictA.items())
for key,value in dictA.items():
print(‘%s==%s’%(key,value))

指定键删除

del dictA[‘name’]
print(dictA)

按照key和value排序

print(sorted(dictA.keys()))
#print(sorted(dictA.values()))

#拷贝, copy,deepcopy 会拷贝复杂类型,如 list、dict
import copy
dictB=copy.copy(dictA)#浅拷贝
dictc=copy.deepcopy(dictA)#深拷贝

print(id(dictc))
print(id(dictA))
print(id(dictB))

dictB[‘age’]=‘20’
dictc[‘age’]=‘20’
print(dictB)
print(dictc)
print(dictA)
print(type(dictB))
print(type(dictc))


### 关于Python技术储备


学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!


包括:Python激活码+安装包、Python web开发,Python爬虫,Python数据分析,Python自动化测试学习等教程。带你从零基础系统性的学好Python!



> 
> 👉[[[CSDN大礼包:《python安装包&全套学习资料》免费分享]]]( )(**安全链接,放心点击**)
> 
> 
> 


#### 一、Python学习大纲




如果你也是看准了Python,想自学Python,在这里为大家准备了丰厚的免费**学习**大礼包,带大家一起学习,给大家剖析Python兼职、就业行情前景的这些事儿。



### 一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。



![](https://img-blog.csdnimg.cn/img_convert/9f49b566129f47b8a67243c1008edf79.png)

### 二、学习软件



工欲善其必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。



![](https://img-blog.csdnimg.cn/img_convert/8c4513c1a906b72cbf93031e6781512b.png)



### 三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

![](https://img-blog.csdnimg.cn/img_convert/eec417a3d4d977b313558a11d3c13e43.png)



### 四、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。



![](https://img-blog.csdnimg.cn/img_convert/ec690501ea1dbe2cb209cbf4013c2477.png)  

![](https://img-blog.csdnimg.cn/img_convert/3eaeaa6747419c9d86c72e0d10d0a6a2.png)



### 四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。



![](https://img-blog.csdnimg.cn/img_convert/252731a671c1fb70aad5355a2c5eeff0.png)



### 五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

![](https://img-blog.csdnimg.cn/img_convert/6c361282296f86381401c05e862fe4e9.png)

成为一个Python程序员专家或许需要花费数年时间,但是打下坚实的基础只要几周就可以,如果你按照我提供的学习路线以及资料有意识地去实践,你就有很大可能成功!
最后祝你好运!!!




**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化学习资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618317507)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 7
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值