Python进阶系列连载(3)——那些容易被忽略的问题(下)
作者:王大伟
Python爱好者社区唯一小编
博客:https://ask.hellobi.com/blog/wangdawei
前文传送门:
Python进阶系列连载(1)——那些容易被忽略的问题(上)
Python进阶系列连载(2)——那些容易被忽略的问题(中)
如果还没看过我的入门连载部分,先看:
Python从零开始系列连载(25)——Python的random模块简单使用(入门知(姿)识(势)学习的最后一篇(片))
当然,小编的免费入门课程已经有咯,看过连载的朋友可以看看视频再快速梳理一遍~
视频传送门:点击文末阅读原文
可变长元组参数
还记得在入门部分讲的函数的可变长参数么,*开头的收集到的的是元组参数,既然有收集,那就可能会有分散
今天我们要讲的就是收集的反面——分散
我们先看个演示:
divmod函数是一个求商和余数的函数,这里传入9和2,返回了4和1
即商为4,余数为1
如果我们想一步到位
使用原有的数组呢?
发现系统抛出异常
仔细看看异常内容
需要两个参数,但你只给了一个!
所以我们尝试分散,也就是今天要学的新内容
我们在传入的元组前加个*号,即可将元组拆开,有点像之前说过的元组拆包~
此时结果返回正常了
序列合体
还记得小学时候看的数码宝贝么?除了前期的进化可以提升数码宝贝的力量
后期更有合体的玩法!
小明:阴阳相合,我懂的!。。。
咳咳,我们今天要讲的是将序列(字符串,列表,元组)相互合并的操作
如果给你一个列表,一个元组,如下图,把他们一对对分别按顺序合并
你会怎么做?
小红:老师,我最喜欢的列表生成式子应该可以:
使用之后发现并不可以,但是改一下就ok:
小红啊,你这是投机取巧看出了数据的特征
小明有想法么?
小明:我觉得可以使用循环试试:
小明这次做的不错,有没有更方便的方法呢?
(众人沉默)
好的,那我们看看今天要讲的函数zip()
zip()函数接收两个或者多个序列,返回一个元组列表
每个元组包含来自每个序列中的一个元素
zip()函数名取自拉链zipper~
就像把两边结合在一起这种
好了,我们看看拉链的具体使用:
返回的结果是一个zip对象,你可以简单认为是一个压缩包
当我们要获取查看它的元素,可以使用循环遍历,如果我们想将结果放在一个list中呢?可以这样:
当然我们还可以将字符串和列表合并:
甚至多个序列合并:
zip()函数的出现为我们创建字典提供了新方法:
文件名和路径
还记得我们在入门阶段讲的路径么,有个细节要补充一下,让我们更加偷懒
返回当前目录:
返回当前目录有以下好处:
1.方便构造文件操作路径
2.提醒我们当前在什么目录操作
我们还可以检查该目录下是否存在某个文件:
今天作业是自己跟着操作一遍~
自己不敲代码永远学不会写代码
下课
人生苦短,我选Python
未完待续,连载中......
欢迎评论指出文中错误和提问~~~
Python爱好者社区历史文章大合集:
Python爱好者社区历史文章列表(每周append更新一次)
关注后在公众号内回复“课程”即可获取:
0.小编的Python入门视频课程!!!
1.崔老师爬虫实战案例免费学习视频。
2.丘老师数据科学入门指导免费学习视频。
3.陈老师数据分析报告制作免费学习视频。
4.玩转大数据分析!Spark2.X+Python 精华实战课程免费学习视频。
5.丘老师Python网络爬虫实战免费学习视频。