博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
七个不一样的Python代码写法,让你写出一手漂亮的代码
阅读量:6472 次
发布时间:2019-06-23

本文共 1120 字,大约阅读时间需要 3 分钟。

关注头条号,私信回复资料会有意外惊喜呦………………最后一张照片有资料呦。

七个不一样的Python代码写法,让你写出一手漂亮的代码

Python语言这么火,有很多同学是从其他语言转行过来的(比如c++,java语言),多多少少写代码的时候也会受其他语言的影响!而对于刚开始学语言的小白同学来说,解决问题的思路有的时候会比较单一,其实Python有很多灵活的解法,今天通过这7招,带你写出一手漂亮的code!

打印index

对于一个列表,或者说一个序列我们经常需要打印它的index,一般传统的做法或者说比较low的写法:

七个不一样的Python代码写法,让你写出一手漂亮的代码

更优雅的写法是多用enumerate

七个不一样的Python代码写法,让你写出一手漂亮的代码

两个序列的循环

我们会经常对两个序列进行计算或者处理,比较low的方法是用下标去循环处理

七个不一样的Python代码写法,让你写出一手漂亮的代码

更优雅一点的方法:用zip轻松搞定

七个不一样的Python代码写法,让你写出一手漂亮的代码

有没有更优雅的方法呢,比如如果两个序列有10000的长度,当然有的用izip

七个不一样的Python代码写法,让你写出一手漂亮的代码

当然izip还是Py2.x时代的产物,现在Py3.6里面默认zip都是izip了!

交换变量

多个变量之间的交换,相信很多有c,c++语言基础的同学对这个再熟悉不过了,比如我们经典的冒泡排序,就会用这一招,看看比较传统的做法:

七个不一样的Python代码写法,让你写出一手漂亮的代码

更优雅的做法是:

七个不一样的Python代码写法,让你写出一手漂亮的代码

字典的读取

字典是我们经常使用的数据结构,对于字典的访问和读取,如果我们的读取的字典的key为空怎么办,一般我们需要一个缺省值,菜鸟的写法:

七个不一样的Python代码写法,让你写出一手漂亮的代码

比较优雅的做法是:

七个不一样的Python代码写法,让你写出一手漂亮的代码

巧妙的利用了字典get的用法,如果字典里面没有Susan这个key,则用unknow来表示缺省值!

循环查找

我们经常会在一个大的循环中作搜索业务,比如从一个文件中搜索关键字,比如从文件名列表中查找一些特殊的文件名,想当然的写法如下:

七个不一样的Python代码写法,让你写出一手漂亮的代码

更优雅的写法:上面的写法是传统的c,c++写法,Python里面有更简洁的写法:

七个不一样的Python代码写法,让你写出一手漂亮的代码

文件读取查找

通常来说,我们要打开一个文件,然后对文件的内容进行循环读取和处理,菜鸟的写法如下:

七个不一样的Python代码写法,让你写出一手漂亮的代码

更优雅的写法:

七个不一样的Python代码写法,让你写出一手漂亮的代码

关于锁的写法

对于并发操作尤其是多线程的操作,我们对同一块内存进行读写操作的时候,通常我们都加锁保护的,想当然的写法如下:

七个不一样的Python代码写法,让你写出一手漂亮的代码

上面这样的写法我自己写了很多年,觉得没有啥问题啊,后来遇到下面的写法,瞬间膜拜了!

更优雅的写法:

七个不一样的Python代码写法,让你写出一手漂亮的代码

结论:

上面这7招看起来很普通,但是深刻的理解,发现其实就是Python一贯倡导的Pythonic风格的代码,简洁而优美!如果你要问我如何才能掌握上面的这些技巧和方法,我觉得先背下来吧。

很多人在问,学习Python读什么书,这其实是一个非常通用的问题,学习分为三种方式:看书、上课,而读书学习是最实惠也是最高效的一种,小编整理了一些Python高分书籍给大家,从0基础到高级适合不同学习阶段,希望大家学习愉快。获取方式:点击小编头像,关注后私信回复“资料”即可下载。

七个不一样的Python代码写法,让你写出一手漂亮的代码

转载地址:http://yxvko.baihongyu.com/

你可能感兴趣的文章
bzoj1106[POI2007]立方体大作战tet*
查看>>
spring boot configuration annotation processor not found in classpath问题解决
查看>>
由中序遍历和后序遍历求前序遍历
查看>>
我学习参考的网址
查看>>
[Processing]点到线段的最小距离
查看>>
GitHub使用教程、注册与安装
查看>>
<<The C Programming Language>>讀書筆記
查看>>
git代码冲突
查看>>
解析查询 queryString 请求参数的函数
查看>>
学生选课系统数据存文件
查看>>
git bash 风格调整
查看>>
linux操作系统加固软件,系统安全:教你Linux操作系统的安全加固
查看>>
linux中yum源安装dhcp,24.Linux系统下动态网络源部署方法(dhcpd)
查看>>
HDOJ-1010 Tempter of the Bone
查看>>
JavaNIO基础02-缓存区基础
查看>>
日本开设无人机专业,打造无人机“人才市场”
查看>>
190行代码实现mvvm模式
查看>>
兼容几乎所有浏览器的透明背景效果
查看>>
jeesite 框架搭建与配置
查看>>
Adb移植(一)简单分析
查看>>