Python 语言里有许多(而且是越来越多)的高级特性,是 Python 发烧友们非常喜欢的。在这些人的眼里,能够写出那些一般开发者看不懂的高级特性,就是高手,就是大神。

但你要知道,在团队合作里,炫技是大忌。

为什么这么说呢?我说下自己的看法:

  1. 越简洁的代码,越清晰的逻辑,就越不容易出错;

  2. 在团队合作中,你的代码不只有你在维护,降低别人的阅读/理解代码逻辑的成本是一个良好的品德

  3. 简单的代码,只会用到最基本的语法糖,复杂的高级特性,会有更多的依赖(如语言的版本)

该篇是「炫技系列」的第二篇内容,在这个系列里,我将总结盘点一下,我所见过的那些炫技操作。在这里,如果你是 Python 发烧友,你可以学到一些写出超酷的代码书写技巧。同时,看了这些内容,对你在阅读别人的代码时,也许会有些帮助。

1. 最简单的原地更新

字典对象内置了一个 update 方法,用于把另一个字典更新到自己身上。

>>> profile = {"name": "xiaoming", "age": 27}
>>> ext_info = {"gender": "male"}
>>>
>>> profile.update(ext_info)
>>> print(profile)
{'name': 'xiaoming', 'age': 27, 'gender': 'male'}

如果想使用 update 这种最简单、最地道原生的方法,但又不想更新到自己身上,而是生成一个新的对象,那请使用深拷贝。

>>> profile = {"name": "xiaoming", "age": 27}
>>> ext_info = {"gender": "male"}
>>>
>>> from copy import deepcopy
>>>
>>> full_profile = deepcopy(profile)
>>> full_profile.update(ext_info)
>>>
>>> print(full_profile)
{'name': 'xiaoming', 'age': 27, 'gender': 'male'}
>>> print(profile)
{

实习生Python炫技却被主管教育?原来是这样!相关推荐

  1. Python 炫技操作:合并字典的七种方法

    来源 | Python编程时光(ID: Cool-Python) Python 语言里有许多(而且是越来越多)的高级特性,是 Python 发烧友们非常喜欢的.在这些人的眼里,能够写出那些一般开发者看 ...

  2. 【Python基础】Python 炫技操作:五种 Python 转义表示法

    相信对于不少同学来说,即使是非常不起眼的 转义, 本篇文章也是能学到不少东西的. 好了,以下是文章的正文. 1. 为什么要有转义? ASCII 表中一共有 128 个字符.这里面有我们非常熟悉的字母. ...

  3. Python炫技操作:花式导包的八种方法

    点击上方"Python爬虫与数据挖掘",进行关注 回复"书籍"即可获赠Python从入门到进阶共10本电子书 今 日 鸡 汤 五岳寻仙不辞远,一身好入名山游. ...

  4. Python 炫技操作(九):调用函数的九种方法

    系列导读 Python 炫技操作(一):条件语句的七种写法 Python 炫技操作(二):合并字典的七种方法 Python 炫技操作(三):判断是否包含子串的七种方法 Python 炫技操作(四):连 ...

  5. 很多人不知道的Python 炫技操作:海象运算符的三种用法

    Python 炫技操作--海象运算符的三种用法 1. 第一个用法:if/else 2. 第二个用法:while 3. 第三个用法:推导式 Python 版本发展非常快,如今最新的版本已经是 Pyhto ...

  6. Python 炫技操作(01):条件语句的七种写法

    首发于微信公众号:Python编程时光 系列导读 Python 炫技操作:条件语句的七种写法 Python 炫技操作:合并字典的七种方法 Python 炫技操作:连接列表的八种方法 有的人说 Pyth ...

  7. Python炫技操作:条件语句的七种写法

    作者 | 写代码的明哥 来源 | Python编程时光 有的人说 Python 入门容易,但是精通难的语言,这点我非常赞同. Python 语言里有许多(而且是越来越多)的高级特性,是 Python ...

  8. Python 炫技操作:条件语句的七种写法,你都知道吗?

    有的人说 Python 入门容易,但是精通难的语言,这点我非常赞同. Python 语言里有许多(而且是越来越多)的高级特性,是 Python 发烧友们非常喜欢的.在这些人的眼里,能够写出那些一般开发 ...

  9. 让人想骂街的 Python 炫技操作:条件语句的七种写法

    有的人说 Python 入门容易,但是精通难的语言,这点我非常赞同. Python 语言里有许多(而且是越来越多)的高级特性,是 Python 发烧友们非常喜欢的.在这些人的眼里,能够写出那些一般开发 ...

最新文章

  1. 探究位置误差对单目3D目标检测影响
  2. Spring中加载xml配置文件的六种方式
  3. 电脑账户头像怎么删掉_电脑用户账户头像在哪里更改?怎么更改?
  4. 皮一皮:这是传说盖浇饭中的天花板~白粥盖浇饭...
  5. 元件库导入_Axure RP9【元件库的学习】
  6. [ios2]ios系统中各种设置项的url链接
  7. .NET 6 攻略大全(二)
  8. 移动端h5唤起键盘_移动端H5界面打开后,如何自动调用软键盘
  9. Linux中文件颜色所代表的属性和颜色
  10. idea引入外部jar,运行项目不报错,使用maven打war包install/package时报程序包不存在等
  11. mysql如何通过数据库修改root_MySQL数据库之MySQL——修改root密码的4种方法(以windows为例)...
  12. php限制密码输入错误次数,js密码输入错误指定次数禁止输入
  13. 涨姿势,原来程序员喝酒都是这样的呀
  14. 华东交通大学计算机科学与技术专业,华东交通大学计算机科学与技术专业2016年在湖北理科高考录取最低分数线...
  15. PDM,读《电商产品经理宝典:电商后台系统产品逻辑全解析》
  16. 屏幕缩放比例 html,css如何自适应屏幕大小?
  17. u盘如何在计算机应用内存,u盘扩大内存,小编教你如何用U盘扩展内存
  18. vue 后台管理系统富文本组件(四)UEditor(集成 135 编辑器插件)
  19. 2018-2-13-windows-10预览版升级win10-7月29-10240.16384
  20. MySQL查询结果导出方式总结

热门文章

  1. Android用opencv识别红绿灯,Opencv 图像识别Android实战(识别扑克牌 8.处理筛选区)
  2. 2022全球程序员薪酬报告:字节在榜,上海薪资近9万美元
  3. 浅谈功能测试用例模板设计
  4. 我家云刷android系统教程,我家云刷机教程——小白详细版
  5. 区块链技术入门(基于Hyperledger Fabric)
  6. pytorch 打印网络参数
  7. 前端学习路线:从小白到大神的一步之遥
  8. 随想004:交流的思考
  9. linux怎样开启telnet服务,linux开启telnet服务
  10. 【C语言】确定乒乓球比赛对战赛手名单