文档章节

编写地道的python(1)

hyperfox
 hyperfox
发布于 2015/08/26 00:22
字数 369
阅读 5
收藏 0

#程序员薪资揭榜#你做程序员几年了?月薪多少?发量还在么?>>>

该系列博文原文出自jeff knupp所著的编写地道的python(writing idiomatic python)一书, 原书版权归原作者所有.

关于if语句

  1. 避免直接与True, False或None去比较. 在python中,以下几种情况都会被当做False:

    1. None

    2. False

    3. 数字类型的0

    4. 空list或dict

    5. 0值或者当__len__或__nonzero返回False

    其他情况都会当做True, 你可以重写e中的两个内置函数来自定义如何才会返回True或者False.

    你可以直接这样写 if foo: 而不用这样写 if foo == True:

    这样写的好处在于经过未来的重构之后, foo可能变成了一个int类型的值而且永远不会 == True, 直接写 if foo: 就不用再修改原先的函数了.

    这里有个点要注意区分一下,就是==和is的区别, ==意思是值是否相等,它调用的是类内部的_eq, is意思是他们是否是同一个对象,即两个变量是否指向的是同一段内存, 有些地方is表现的像==一样,但是这是不可靠的.

    注意有些情况是必须与None去比较的,比如

    def insert_data(self, position=None):
        if position is None:

    此处由于0也是一个有效值所以不能直接写 if position:

    还有一种情况是如果与None去比较必须使用is或者is not,不要用==. (PEP8规定)

© 著作权归作者所有

hyperfox

hyperfox

粉丝 4
博文 2
码字总数 798
作品 1
广州
程序员
私信 提问
加载中

评论(0)

Python编写循环的两个建议 | 鹅厂实战

作者:腾讯技术工程 链接:https://zhuanlan.zhihu.com/p/68128557 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 循环是一种常用的程序控制结构。我们...

osc_fcu2peyx
2019/06/08
2
0
Python 工匠:编写地道循环的两个建议

循环是一种常用的程序控制结构。我们常说,机器相比人类的最大优点之一,就是机器可以不眠不休的重复做某件事情,但人却不行。而“循环”,则是实现让机器不断重复工作的关键概念。 在循环语...

急速奔跑中的蜗牛
2019/06/13
0
0
Python入门书籍电子版PDF百度云网盘免费下载

大家好我是李斌,一位转型做增长的爬虫师。从我最初学 Python 到现在已经过去整整一年时间了,而后我也在上海一家公司做了一年的爬虫工作。一路上对于 Python 的学习还是非常有心得,今天我就...

osc_6kxooi0n
03/07
48
0
福利 | Python专场竞技,这些书给你加把力!

端午节将至,各地龙舟备战竞技,粽子部队也整装待发。小编掐指一算,这种热闹的时节,是时候展现真正的技(fu)术(li)了! (“Python号”龙舟闪亮登场!) Python作为当下最流行的编程语言...

2018/06/15
0
0
Python|19个优雅的Python编程技巧,涨姿势

Python最大的优点之一就是语法简洁,好的代码就像伪代码一样,干净、整洁、一目了然。要写出 Pythonic(优雅的、地道的、整洁的)代码,需要多看多学大牛们写的代码,github 上有很多非常优秀...

糖宝lsh
2018/12/04
84
0

没有更多内容

加载失败,请刷新页面

加载更多

华为pat地址转换,以及内网web服务器发布

实验名称:华为pat地址转换,以及内网web服务器发布 实验拓扑图: 3. 实验目的 : 1.使内网通过pat转化出去上外网 2.使用静态pat做端口映射,发布web服务器 3.配置交换机远程登录 4. 地址规划 cl...

osc_2ch77h9m
44分钟前
7
0
php优化与模块

缓存 xcache eaccelerator zendopcache pdo_mysql扩展 memcache扩展 memcached扩展 mongo扩展 imagemagick imagick扩展...

osc_tb68dlqx
46分钟前
25
0
ATFX投资者教育活动凸显优势,助力客户有效应对市场波动

ATFX动态:新冠肺炎疫情全球传播期间,各国纷纷颁布“居家令”等措施,要求员工必须待在家里,因此也给各行各业带来了不同程度的影响。为了配合各国颁布的防疫措施,ATFX全球办事处依据各地的...

ATFX
46分钟前
22
0
ospf的工作原理

#谈起ospf(开放式最短路径优先),首先它是一种链路状态路由协议 它的工作过程主要有以下几点 : # 建立邻居表 hello : 仅仅使用hello报文,发现邻居,用于邻居的建立,维护,拆除 ospf 路由仅仅...

osc_4dgu16li
47分钟前
16
0
mysql5.7.20安装

rpm -qa | grep mysql yum -y install make gcc-c++ cmake bison-devel ncurses-devel cd /root wget http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz m......

osc_pl4ni83h
48分钟前
17
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部