Python进阶系列连载(3)——那些容易被忽略的问题(下)

作者:王大伟

Python爱好者社区唯一小编

博客:https://ask.hellobi.com/blog/wangdawei

如果还没看过我的入门连载部分,先看:

当然,小编的免费入门课程已经有咯,看过连载的朋友可以看看视频再快速梳理一遍~

可变长元组参数

还记得在入门部分讲的函数的可变长参数么,*开头的收集到的的是元组参数,既然有收集,那就可能会有分散

今天我们要讲的就是收集的反面——分散

我们先看个演示:

divmod函数是一个求商和余数的函数,这里传入9和2,返回了4和1

即商为4,余数为1

如果我们想一步到位

使用原有的数组呢?

发现系统抛出异常

仔细看看异常内容

需要两个参数,但你只给了一个!

所以我们尝试分散,也就是今天要学的新内容

我们在传入的元组前加个*号,即可将元组拆开,有点像之前说过的元组拆包~

此时结果返回正常了

序列合体

还记得小学时候看的数码宝贝么?除了前期的进化可以提升数码宝贝的力量

后期更有合体的玩法!

小明:阴阳相合,我懂的!。。。

咳咳,我们今天要讲的是将序列(字符串,列表,元组)相互合并的操作

如果给你一个列表,一个元组,如下图,把他们一对对分别按顺序合并

你会怎么做?

小红:老师,我最喜欢的列表生成式子应该可以:

使用之后发现并不可以,但是改一下就ok:

小红啊,你这是投机取巧看出了数据的特征

小明有想法么?

小明:我觉得可以使用循环试试:

小明这次做的不错,有没有更方便的方法呢?

(众人沉默)

好的,那我们看看今天要讲的函数zip()

zip()函数接收两个或者多个序列,返回一个元组列表

每个元组包含来自每个序列中的一个元素

zip()函数名取自拉链zipper~

就像把两边结合在一起这种

好了,我们看看拉链的具体使用:

返回的结果是一个zip对象,你可以简单认为是一个压缩包

当我们要获取查看它的元素,可以使用循环遍历,如果我们想将结果放在一个list中呢?可以这样:

当然我们还可以将字符串和列表合并:

甚至多个序列合并:

zip()函数的出现为我们创建字典提供了新方法:

文件名和路径

还记得我们在入门阶段讲的路径么,有个细节要补充一下,让我们更加偷懒

返回当前目录:

返回当前目录有以下好处:

1.方便构造文件操作路径

2.提醒我们当前在什么目录操作

我们还可以检查该目录下是否存在某个文件:

今天作业是自己跟着操作一遍~

自己不敲代码永远学不会写代码

下课

本文来自企鹅号 - Python爱好者社区媒体

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Android干货

自定义控件:数独游戏(二)

3437
来自专栏IT可乐

深入理解计算机系统(2.1)------信息的存储和表示

  前面我们介绍了《深入理解计算机系统》第一章的内容----计算机系统漫游。包括简单介绍了 Hello World 程序在计算机中是如何运行的,存储设备的层次结...

2098
来自专栏高性能服务器开发

API设计原则 – QT官网的设计实践总结

原文链接:API Design Principles – Qt Wiki 链接:(http://wiki.qt.io/API_Design_Principles...

1462
来自专栏狮乐园

多维数组取值问题

给予一个多维数组和一个描述取值路径的一维数组, 通过调用函数f返回取值路径描述的值,如 f([[1, 2], [3, 4], [5, 6]], [0, 0]) ...

963
来自专栏Golang语言社区

Go的语言特性总结

写在前面: 近来关于对Golang的讨论有很多,七牛的几个大牛们也断定Go语言在未来将会快速发展,并且很可能会取代Java成为互联网时代最受欢迎的编程语言。G...

4477
来自专栏嵌入式程序猿

sizeof应用的小陷阱

本篇笔记主要介绍在项目开发中,使用sizeof的一个要注意的地方。分别在8位机microchip PIC18F46K22, 16位机microchip ds...

3588
来自专栏北京马哥教育

让你的 Python 代码优雅又地道

学Python最简单的方法是什么?推荐阅读:Python开发工程师成长魔法 译序 如果说优雅也有缺点的话,那就是你需要艰巨的工作才能得到它,需要良好的教育才能欣...

38610
来自专栏青玉伏案

代码重构(一):函数重构规则

重构是项目做到一定程度后必然要做的事情。代码重构,可以改善既有的代码设计,增强既有工程的可扩充、可维护性。随着项目需求的不断迭代,需求的不断更新,我们在项目中所...

2185
来自专栏CDA数据分析师

10个应该早点知道的Python技巧

我的这一生都在编程,但是我没有成为一名程序员。最初,我的大部分工作都是用Visual Basic来完成的,还包括一些其它语言工具,比如R语言,C语言、JavaS...

2409
来自专栏Crossin的编程教室

【Python 第26课】 操作list

上周给list开了个头,知道了什么是list。假设我们现在有一个list: l = [365, 'everyday', 0.618, True] 除了用for...

35511

扫码关注云+社区