18式优雅你的Python

论坛 期权论坛 期权     
Python编程   2019-6-30 19:00   3209   0
来自公众号:Python与算法之美
一,优雅你的Jupyter

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

平凡方法:
在cmd中输入
  1. jupyter notebook --generate-config,
复制代码
然后找到生成的配置文件 jupyter_notebook_config.py,在其中加入一条语句:
  1. c.NotebookApp.notebook_dir =
复制代码
  1. '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,使用装饰器给函数添加插入日志,性能测试等非核心功能

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




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




●编号678,输入编号直达本文

●输入m获取文章目录
推荐↓↓↓
程序员求职面试
分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:145
帖子:29
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP