做教学的视频网站,网站建设多少带宽,最超值的赣州网站建设,做厨柜有招聘网站吗文章目录 前言 Python有那几种数据结构#xff1f;1)列表#xff08;list)1.1 什么是列表#xff1f;1.2列表的增删改查 2#xff09;字典#xff08;Dictionary)2.1 什么是字典#xff1f;2.2 字典的增删改查 3#xff09;元组#xff08;Tuple)4)集合#xff08;Set… 文章目录 前言 Python有那几种数据结构1)列表list)1.1 什么是列表1.2列表的增删改查 2字典Dictionary)2.1 什么是字典2.2 字典的增删改查 3元组Tuple)4)集合Set)4.1什么是集合 5番外——数据结构的一些技巧5.1多重循环5.2推导式 5.3循环列表时获取元素的索引关于Python技术储备一、Python所有方向的学习路线二、Python基础学习视频三、精品Python学习书籍四、Python工具包项目源码合集①Python工具包②Python实战案例③Python小游戏源码五、面试资料六、Python兼职渠道 前言 数据结构中有很多树的结构其中包括二叉树、二叉搜索树、2-3树、红黑树等等。本文中对数据结构进行了总结不求严格精准但求简单易懂 Python有那几种数据结构
Python 有四种数据结构分别是列表、字典、元组集合。每种数据结构都有自己的特点并且都有着独到的用处。为了避免过早地陷入细枝末节。
我们先从整体上来认识一下这四种数据结构从最容易识别的特征上来说列表中的元素使用方括号扩起来字典和集合是花括号而元组则是圆括号。其中字典中的元素是均带有 ‘ 的 key 与 value 的对应关系组。 1)列表list)
1.1 什么是列表
最显著的特征是
列表中的每一个元素都是可变的列表中的元素是有序的也就是说每一个元素都有一个位置列表可以容纳 Python 中的任何对象。
列表中的元素是可变的这意味着我们可以在列表中添加、删除和修改元素。
输入
Weekday \[Monday,Tuesday,Wednesday,Thursday,Friday\]
print(Weekday\[0\])第三个特征是列表可以装入 Python 中所有的对象往下看
all\_in\_list \[1, #整数1.0, #浮点数a word, #字符串print(1), #函数True, #布尔值\[1,2\], #列表中套列表(1,2), #元组{key:value} #字典
\]1.2列表的增删改查
对于数据的操作最常见的是增删改查这四类。从列表的插入方法开始输入
fruit \[pineapple,pear\]
fruit.insert(1,grape)
print(fruit)在使用 insert 方法的时候必须指定在列表中要插入新的元素的位置插入元素的实际位置是在指定位置元素之前的位置如果指定插入的位置在列表中不存在实际上也就是超出指定列表长度那么这个元素一定会被放在列表的最后位置。
其他方法达到“插入”的效果
fruit\[0:0\] \[Orange\]
print(fruit)删除列表中元素的方法是使用 remove()
fruit \[pinapple,pear,grape\]
fruit.remove(grape)
print(fruit)替换修改其中的元素
fruit\[0\] Grapefruit删除还有一种方法那就是使用 del 关键字来声明
del fruit\[0:2\]
print(fruit)2字典Dictionary)
2.1 什么是字典
字典这种数据结构的特征也正如现实世界中的字典一样使用名称内容进行数据的构建在 Python 中分别对应着键key值value习惯上称之为键值对。
字典的特征总结如下
字典中数据必须是以键值对的形式出现的逻辑上讲键是不能重复的而值可以重复字典中的键key是不可变的也就是无法修改的而值value是可变的可修改的可以是任何对象。
举个小栗子
这是字典的书写方式NASDAQ\_code {BIDU:Baidu,SINA:Sina,YOKU:Youku
}一个字典中键与值并不能脱离对方而存在如果你写成 {BIDU:} 会引发语法错误。
记住这两个特征 key 和 value 是一一对应的key 是不可变的。
同时字典中的键值不会有重复即便你这么做相同的键值也只能出现一次
a {key:123,key:123}
print(a)2.2 字典的增删改查
首先我们按照映射关系创建一个字典
NASDAQ\_code {BIDU:Baidu,SINA:Sina}与列表不同的是字典并没有一个可以往里面添加单一元素的“方法”但是我们可以通过这种方式进行添加
NASDAQ\_code\[YOKU\] Youku
print(NASDAQ\_code列表中有用来添加多个元素的方法 extend() 在字典中也有对应的添加多个元素的方法 update()
NASDAQ\_code.update({FB:Facebook,TSLA:Tesla})删除字典中的元素则使用 del 方法
del NASDAQ\_code\[FB\]需要注意的是虽说字典是使用的花括号在索引内容的时候仍旧使用的是和列表一样的方括号进行索引只不过在括号中放入的一定是——字典中的键也就是说需要通过键来索引值
NASDAQ\_code\[TSLA\]同时字典是不能够切片的也就是说下面这样的写法应用在字典上是错误的
chart\[1:4\] # WRONG!3元组Tuple)
元组其实可以理解成一个稳固版的列表因为元组是不可修改的因此在列表中的存在的方法均不可以使用在元组上但是元组是可以被查看索引的方式就和列表一样
letters (a,b,c,d,e,f,g)
letter\[0\]4)集合Set)
4.1什么是集合
每一个集合中的元素是无序的、不重复的任意对象我们可以通过集合去判断数据的从属关系有时还可以通过集合把数据结构中重复的元素减掉。 集合不能被切片也不能被索引除了做集合运算之外集合元素可以被添加还有删除
a\_set {1,2,3,4}
a\_set.add(5)
a\_set.discard(5)5番外——数据结构的一些技巧
5.1多重循环
举个栗子比如在整理表格或者文件的时候会按照字母或者日期进行排序在 Python 中也存在类似的功能。
num\_list \[6,2,7,4,1,3,5\]
print(sorted(num\_list))sorted 函数按照长短、大小、英文字母的顺序给每个列表中的元素进行排序。这个函数会经常在数据的展示中使用其中有一个非常重要的地方sorted 函数并不会改变列表本身你可以把它理解成是先将列表进行复制然后再进行顺序的整理。
在使用默认参数 reverse 后列表可以被按照逆序整理
sorted(num\_list,reverseTrue)在整理列表的过程中如果同时需要两个列表应该怎么办这时候就可以用到 zip 函数比如
for a,b in zip(num,str):print(b,is,a)5.2推导式
数据结构中的推导式也许你还看到过它的另一种名称叫做列表的解析式。
现在我有10个元素要装进列表中普通的写法是这样的
a \[\]
for i in range(1,11):a.append(i)下面换成列表解析的方式来写
b \[i for i in range(1,11)\]列表解析式不仅非常方便并且在执行效率上要远远胜过前者我们把两种不同的列表操作方式所耗费的时间进行对比就不难发现其效率的巨大差异
import timea \[\]
t0 time.clock()
for i in range(1,20000):a.append(i)
print(time.clock() - t0, seconds process time)
t0 time.clock()
b \[i for i in range(1,20000)\]
print(time.clock() - t0, seconds process time)得到结果 8.999999999998592e-06 seconds process time 0.0012320000000000005 seconds process time 列表推导式的用法也很好理解可以简单地看成两部分。红色虚线后面的是我们熟悉的 for 循环的表达式而虚线前面的可以认为是我们想要放在列表中的元素在这个例子中放在列表中的元素即是后面循环的元素本身。 5.3循环列表时获取元素的索引
现在我们有一个字母表如何能像图中一样在索引的时候得到每个元素的具体位置的展示呢
letters \[a, b, c, d, e, f, g\]a is 1
b is 2
c is 3
d is 4
e is 5
f is 6
g is 7前面提到过列表是有序的这时候我们可以使用 Python 中独有的函数 enumerate 来进行
letters \[a, b, c, d, e, f, g\]
for num,letter in enumerate(letters):print(letter,is,num 1)关于Python技术储备
学好 Python 不论是就业还是做副业赚钱都不错但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料给那些想学习 Python 的小伙伴们一点帮助 CSDN大礼包《Python入门资料实战源码安装工具】免费领取安全链接放心点击 一、Python所有方向的学习路线
Python所有方向的技术点做的整理形成各个领域的知识点汇总它的用处就在于你可以按照上面的知识点去找对应的学习资源保证自己学得较为全面。
二、Python基础学习视频
② 路线对应学习视频
还有很多适合0基础入门的学习视频有了这些视频轻轻松松上手Python~在这里插入图片描述
③练习题
每节视频课后都有对应的练习题哦可以检验学习成果哈哈 因篇幅有限仅展示部分资料
三、精品Python学习书籍
当我学到一定基础有自己的理解能力的时候会去阅读一些前辈整理的书籍或者手写的笔记资料这些笔记详细记载了他们对一些技术点的理解这些理解是比较独到可以学到不一样的思路。
四、Python工具包项目源码合集
①Python工具包
学习Python常用的开发软件都在这里了每个都有详细的安装教程保证你可以安装成功哦
②Python实战案例
光学理论是没用的要学会跟着一起敲代码动手实操才能将自己的所学运用到实际当中去这时候可以搞点实战案例来学习。100实战案例源码等你来拿
③Python小游戏源码
如果觉得上面的实战案例有点枯燥可以试试自己用Python编写小游戏让你的学习过程中增添一点趣味
五、面试资料
我们学习Python必然是为了找到高薪的工作下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料并且有阿里大佬给出了权威的解答刷完这一套面试资料相信大家都能找到满意的工作。
六、Python兼职渠道
而且学会Python以后还可以在各大兼职平台接单赚钱各种兼职渠道兼职注意事项如何和客户沟通我都整理成文档了。 这份完整版的Python全套学习资料已经上传CSDN朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】