前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >18 种方法来优雅你的 Python

18 种方法来优雅你的 Python

作者头像
崔庆才
发布2019-07-30 19:51:07
7180
发布2019-07-30 19:51:07
举报
文章被收录于专栏:进击的Coder

Python 讲求的一个目标就是 Pythonic,很多情况下我们会追求 Python 的代码更加优雅的写法。这里分享一篇文章,这里列举了非常全面的方法来优雅 Python 的写法,大家不妨试着用一用。

转载来源

公众号:Python 与算法之美

一,优雅你的 Jupyter

1,更改 Jupyter Notebook 初始工作路径

平凡方法:

在cmd中输入jupyter notebook --generate-config,然后找到生成的配置文件 jupyter_notebook_config.py,在其中加入一条语句:

c.NotebookApp.notebook_dir = 'F:我的坚果云PythonFiles'

优雅方法:

新建文本文件,在其中输入以下内容:

F: cd F:我的坚果云PythonFiles jupyter notebook pause

保存后将文件重命名为 jupyter.cmd,双击该文件即可。

2,获取函数帮助

平凡方法:

help()。

优雅方法:

光标移动至函数名右侧(或选中函数名),按住 Shift + Tab 键弹出帮助文本框。

3,修改多处的同一标识符名字

平凡方法:

逐个修改。

优雅方法:

按住 Ctrl 鼠标移动光标同时选中多处编辑位置,启动多行编辑。

二,优雅你的赋值语句

4,为多个变量赋值

平凡方法:

逐一赋值。

优雅方法:

使用元组语法同时赋值。

5,序列解包

平凡方法:

使用下标访问逐一赋值。

优雅方法:

序列自动解包。

6,对象方法的嵌套

平凡方法:

定义中间变量,不嵌套。

优雅方法:

使用对象方法嵌套,减少中间变量。

三,优雅你的判断语句

7,单行 if 语句:if...else... 三目运算符

平凡方法:

使用普通需要换行的 if...else... 语句。

优雅方法:

使用单行 if 语句:if...else... 三目运算符。

8,区间判断

平凡方法:

使用 and 连接两次判断。

优雅方法:

使用链式判断。

9,判断是否为多个取值之一

平凡方法:

使用 or 连接多次相等判断。

优雅方法:

使用关键字 in

10,判断是否为空列表,空字典,空字符串

平凡方法:

使用 len 函数判断长度是否大于 0。

优雅方法:

利用隐含类型转换直接判断

11,判断诸多条件是否至少有一个成立

平凡方法:

使用 or 连接多次判断。

优雅方法:

使用 any 函数。

12,判断诸多条件是否全部成立

平凡方法:

使用 and 连接多次判断。

优雅方法:

使用 all 函数。

四,优雅你的循环语句

13,单行循环语句:推导式

平凡方法:

使用普通 for 循环。

优雅方法:

使用推导式:[... for .... in ... if ... ]。

14,同时遍历序列的元素和元素下标

平凡方法:

遍历下标,并用下标访问元素。

优雅方法:

使用 enumerate 函数生成下标和元素对。

15,显示循环进度

平凡方法:

直接不断 print 下标。该方法容易导致输出刷屏。

优雅方法:

print 下标后设置不换行并使用‘ ’回车到行首以避免输出刷屏。

优雅方法加强版:

定义 progress_bar 函数,直观显示进度条。

五,优雅你的函数

16,使用 lambda 匿名函数实现简单的函数

平凡方法:

使用 def 关键字定义函数。

优雅方法:

使用 lambda 匿名函数。

17,使用 yield 生成器收集系列值

平凡方法:

在函数中直接用列表收集系列值。

优雅方法:

使用 yield 生成器收集系列值。生成器具有惰性计算特点,被迭代才逐个计算输出值。

18,使用装饰器给函数添加插入日志,性能测试等非核心功能

平凡方法:

将插入日志,性能测试等非核心功能直接内嵌到函数定义中。

优雅方法:

使用装饰器扩展函数的非核心功能。装饰器函数可以一次定义,到处装饰。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-07-25,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 进击的Coder 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档