python的一些基本的建议】的更多相关文章

编写高质量代码:改善Python程序的91个建议  http://book.douban.com/subject/25910544/ 1.(建议16)is 用于判断两个对象的id是否相等,==才是判断值是否相等 2.(建议23)for,while,和try语句后面都可以跟else语句,可以简化代码 3.(建议18) __init__.py模块可以写代码,import时只需要 import 包(文件夹) 4.(建议19)用import a 而不是 from a import b ,可以避免嵌套导入…
读了一本还不错的书「编写高质量代码改善 Python 程序的 91 个建议」,大多数的建议是真心不错,我虽然写python也有3年多了,但是有些地方确实没去注意过,特地整理了一下,给大家参考. 我已经打包好了一份电子书,有兴趣的可以关注公众号:Python专栏.后台回复:91个建议,获取该电子书. 1.引论 建议1:理解Pythonic概念--详见Python中的<Python之禅> 建议2:编写Pythonic代码 避免不规范代码,比如只用大小写区分变量.使用容易混淆的变量名.害怕过长变量名…
  第一章 引论 建议写Pythonic式的代码,我理解为充分利用pythonAPI,用最简洁方式写出代码 1.两个变量交换: a, b = b, a 2.翻转list: a = [1, 2, 3, 4] print(list(reversed(a))) 3.格式化字符串 .format print ( 'my name is {} '.format('jack')) 3.6版本新的格式化字符串方法 name = 'Mollylin' print(f'hello,{name}~!') >>&g…
来源商业新知网,原标题::爬了招聘网站之后,给你几点学习Python的建议 Python语言相关的岗位非常多,有运维,有自动化测试,有后端开发,有机器学习,如果想要快速上手,并且有不错的就业,那就推荐数据分析. 用Python爬取了 深圳不同行业数据分析师的招聘需求 ,金融.电子商务.移动互联网这些热门行业对数据分析师的需求仍然很大. 从薪资来看,数据分析师确实是高薪职位,基本上是10k起步,能开30k的公司也不少 ,从数据本身来看,高层管理职位需求也是很多的,数据的价值越来越受到企业高层的重视…
1.理解Pythonic概念 Pythonic Tim Peters 的 <The Zen of Python>相信学过 Python 的都耳熟能详,在交互式环境中输入import this可以查看,其实有意思的是这段 Python 之禅的源码: d = {} for c in (65, 97): for i in range(26): d[chr(i+c)] = chr((i+13) % 26 + c) print "".join([d.get(c, c) for c i…
建议1.理解Pythonic概念—-详见Python中的<Python之禅> 建议2.编写Pythonic代码 (1)避免不规范代码,比如只用大小写区分变量.使用容易混淆的变量名.害怕过长变量名等.有时候长的变量名会使代码更加具有可读性. (2)深入学习Python相关知识,比如语言特性.库特性等,比如Python演变过程等.深入学习一两个业内公认的Pythonic的代码库,比如Flask等. 建议3:理解Python与C的不同之处,比如缩进与{},单引号双引号,三元操作符?,Switch-C…
第一次听说python是在刚结束与世隔绝的高中生活之后,当时的网络上铺天遍地都是人工智能和机器学习,于是便知道了python这门编程语言.我是光电信息科学与工程专业的学生,这个专业的学生必须要懂计算机编程知识,有了这些知识,才可以实现硬件与软件的结合.我希望本课程可以像老师承诺的那样,不仅涉及编程理论知识,还可以做一些小实验让我感受到python的强大与魅力.上完此门课程我希望我可以大致了解掌握python这门编程语言的框架.因为一学期的课程是远远不够的,以后还需要自己根据这学期所学的框架来努力…
此书是自己好久之前买的,当时总觉得Python语言中有各种trick, 总是要自己猝不及防的掉入到陷阱之中, 看了一些资料后发现了这本书,感觉很是不错,不过可惜自己平时总是杂事太多,总是找不到整块的时间把这本书看完.现在正好赶上自己放寒假,这也是到了新单位后的第一个假期,BOSS说工作学习要靠自己自觉,不过不管怎么说我总是属于不太自觉的那个类型的,于是开启了小差,这也顺路把这本压箱底的书翻了出来,以下记录一些自己觉得自己平时没有注意到的小问题,有选择的记录到下面,也算是读书的小笔记,供自己日后翻…
描述符用法建议, 内置的 property 类创建的是'覆盖型'(date descriptor), 实现了 __set__ 和 __get__. 特性 property 的 __set__ 方法 默认会抛出 'AttributeError: can not set attribute', 也就是说使用 property 是创建'只读'属性的一个简单的方式. 然而, 如果通过 descriptor 来实现'只读' 属性, 一定要 同时实现 __set__ 和 __get__ 方法, 否则, 实例…
1.引论 建议1:理解Pythonic概念—-详见Python中的<Python之禅> 建议2:编写Pythonic代码 避免不规范代码,比如只用大小写区分变量.使用容易混淆的变量名.害怕过长变量名等.有时候长的变量名会使代码更加具有可读性. 深入学习Python相关知识,比如语言特性.库特性等,比如Python演变过程等.深入学习一两个业内公认的Pythonic的代码库,比如Flask等. 建议3:理解Python与C的不同之处,比如缩进与{},单引号双引号,三元操作符,Switch-Cas…
推荐 <改善Pthon程序的91个建议>是从基本原则.惯用方法.语法.库.设计模式.内部机制.开发工具和性能优化8个方面深入探讨编写高质量python代码的技巧.禁忌和最佳实践. 读书就如同和作者对话,阅读本书可以感觉的到作者是一个实战经验丰富的Pythoner,与高手对话受益匪浅.对于一个想要提高自己python代码的coder来说值得一读的. 边读书边记录,把我认为重要的建议记录下来,20个左右,希望更多人能从中获益. 引论 建议5:通过适当添加空行使代码布局更为优雅合理 在函数定义或者类…
1.在需要只读序列时,最好使用元组而非列表: 2.使用生成器yield,而不是创建大的元组和列表并在其上进行迭代处理: 3.尽量使用python内置的数据结构,而不实现自己的自定义结构: 4.从小字符串中产生大字符串时,不要对小字符串进行连接,而是在列表中累积,最后将字符串列表结合成一个单独的字符串: 5.如果某个对象需要多次使用属性访问,或从某个数据结构中进行访问,那么较好的做法是创建并使用一个局部变量来访问对象. 6.可使用字典对多个类似的elif分支进行简化: functions=dict…
   62.metaclass stackflow          中文翻译    63.Python对象协议   https://zhuanlan.zhihu.com/p/26760180      65.Python的迭代器协议 iter(可迭代对象)-->返回迭代器iterator 调用:调用一次返回一个元素,当最后一个元素返回后,再次调用时,抛出StopIteration 异常 iterator.__next__() 或 next(iterator) 设计可迭代对象 上面的看起来没意义…
1.Mutable and immutable types Python有两种内置或用户定义的类型 可变类型是允许就地修改内容的类型.典型的可变列表是列表和词典:所有列表都有变异方法,如 list.append()或list.pop(),并且可以在适当的位置进行修改.词典也是如此. 不可变类型不提供改变其内容的方法.例如,设置为整数6的变量x没有“增量”方法.如果要计算x + 1,则必须创建另一个整数并为其指定名称. 体会一下这Best这招,选择是使用map函数,它可以将内置函数类型str映射到…
一.编码风格 python程序要写的易于阅读 二.python代码的样式规则 遵循PEP8 4个spaces是一次缩排,不允许tabs,不允许混合使用space和tab,方法之间要有一个空行,类之间要有两个空行 在dicts, lists,tuples,还有参数列表的“,”后面加一个space,在dicts的“:”后面加一个space,但是不要在前面加 一行不要超过80个字符 三.语法 交换值 b, a =a, b l = [“David”, “Pythonista”, “+1-514-555-…
Python是一种非常富有表现力的语言.它为我们提供了一个庞大的标准库和许多内置模块,帮助我们快速完成工作.然而,许多人可能会迷失在它提供的功能中,不能充分利用标准库,过度重视单行脚本,以及误解Python基本结构等.本文是一个关于Python新手可能会陷入的一些陷阱的不完全列表. 1.不知道Python版本 这是一个在StackOverflow上反复出现的问题.许多人能写出在某个版本上完美工作的代码,但在他们在自己的系统上安装有不同版本的Python.要确保你知道你正在使用的Python版本.…
[导读]2020年,你又立了什么新的 Flag?新一年,我们先为大家准备 30 个非常优秀的 Python 实践技巧.希望这些诀窍能在实际工作中帮助大家,并且学到一些有用的知识. 1.使用 python 3由于官方从2020年1月1日起就停止了对python2.7的更新支持,因此本教程的大部分例子都只能在python 3环境下运行.如果你仍然在使用2.7版本,请先升级到python 3. 2.检查并使用满足需求的最小python版本你可以在代码中检查Python 版本,以确保你的代码使用者没有使…
Python为啥这么火,这么多人学,就是因为简单好学,功能强大,整个社区非常活跃,资料很多.而且这语言涉及了方方面面,比如自动化测试,运维,爬虫,数据分析,机器学习,金融领域,后端开发,云计算,游戏开发都有涉及. 万丈高楼平地起,Python这座大厦能够如此强大,就是拥有强大的成千上万的库的支持,无数牛逼的轮子在支持这座大厦, 今天我们来一起梳理一下,俯瞰整个Python宝库. 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经…
原文发表在我的博客主页,转载请注明出处! 建议二十八:区别对待可变对象和不可变对象 python中一切皆对象,每一个对象都有一个唯一的标识符(id()).类型(type())以及值,对象根据其值能否修改分为可变对象和不可变对象,其中数字.字符串.元组属于不可变对象,字典以及列表.字节数组属于可变对象. 来看一段程序: class Student(object): def __init__(self,name,course=[]): self.name = name self.course = c…
原文发表在我的博客主页,转载请注明出处! 建议四十一:一般情况下使用ElementTree解析XML python中解析XML文件最广为人知的两个模块是xml.dom.minidom和xml.sax,作为主要解析XML方法的两种实现,DOM需要将整个XML文件加载到内存中并解析为一棵树,简单但是内存消耗大:SAX是基于事件驱动的,虽不需要全部装入XML文件,但是处理过程复杂.一般情况下选择ElementTree便可以,cElementTree是其Cython实现,速度更快,消耗内存更少,性能上更…
<编写高质量代码 改善Python程序的91个建议> <编写高质量代码 改善Python程序的91个建议>读后程序学习小结 - BigDeng_2014的专栏 - CSDN博客 # coding=utf-8 # Language Reference ''' 参考书:<编写高质量代码 改善Python程序的91个建议>张颖,赖勇浩 著 2014.6 ''' from __future__ import with_statement # assert x, y = 1, 1…
本系列来自<编写高质量代码 改善python程序的91个建议>的读书笔记整理.  本章主要内容 建议8:利用assert语句来发现问题 建议9:数据交换值时不推荐使用中间交换变量 建议10:充分利用Lazy evaluation的特性 建议11:理解枚举替代实现的缺陷 建议12:不推荐使用type来进行类型检查 建议13:尽量转换为浮点类型再做除法 建议14:警惕eval()的安全漏洞 建议15:使用enumerate()获取序列迭代的索引和值 建议16:分清==与is的适用场景 建议17:考…
本系列来自<编写高质量代码 改善python程序的91个建议>的读书笔记整理. 本书主要内容     1)容易被忽视的重要概念和常识,如代码的布局和编写函数的原则等:     2)编写python程序管用的方法,如利用assert语句去发现问题,使用enumerate()获取序列迭代的索引和值等:     3)语法中的关键条款,如有节制地使用from…import语句,异常处理的几点基本原则等:     4)常见库的使用,如按需选择sort()或者sorted(),使用Queue使多线程更安全…
原文发表在我的博客主页,转载请注明出处! 建议三十四:掌握字符串的基本用法 编程有两件事,一件是处理数值,另一件是处理字符串,在商业应用编程来说,处理字符串的代码超过八成,所以需要重点掌握. 首先有个小技巧,python遇到未闭合的小括号时会自动将多行代码拼接为一行,同时把相邻的两个字符串字面量拼接再议,比如下面的两个代码是等价的. s = ('SELECT *' 'FROM atable' 'WHERE afield = "value"') 'SELECT *FROM atableW…
原文发表在我的博客主页,转载请注明出处! 建议二十三:遵循异常处理的几点基本原则 python中常用的异常处理语法是try.except.else.finally,它们可以有多种组合,语法形式如下: try: <statements> # Run the main action first except <name1>: <statements> # 当try中发生name1的异常时处理 except <name2, name3>: <statemen…
原文发表在我的博客主页,转载请注明出处! 建议十八:有节制的使用from...import语句 python提供了三种方式引入外部模块: import语句 from...import... __import__函数 使用的时候需要注意以下几点: 一般情况下尽量优先使用import a形式,如访问B时需要使用a.B的形式 有节制地使用from a import B形式,可以直接访问B 尽量避免使用from a import *,因为这会污染命名空间,并且无法清晰地表示导入了哪些对象 首先简单的了解…
原文发表在我的博客主页,转载请注明出处! 建议十三:警惕eval()的安全漏洞 相信经常处理文本数据的同学对eval()一定是欲罢不能,他的使用非常简单: eval("1+1==2") #进行判断 eval("'A'+'B'") #字符连接 eval("1+2") #数字相加 python中eval()函数将字符串str当成有效的表达式来求值并返回计算结果,其函数声明如下: eval(expression[, globals[,locals]])…
原文发表在我的博客主页,转载请注明出处! 建议七:利用assert语句来发现问题断言(assert)在很多语言中都存在,它主要为调试程序服务,能够快速方便地检查程序的异常或者发现不恰当的输入等,可防止意想不到的情况出现.其语法如下: assert expression1 ["," expression2] 其中expression1的值会返回True或者False,当值为False的时候会引发AssertionError,而expression2是可选的,常用来传递具体的异常信息. 不…
原文发表在我的博客主页,转载请注明出处! 初衷 python是一个入门十分容易的编程语言,但是想要写好python却是一件不容易的事情,如果不是专业使用python的人,只是将python作为一个脚本语言或者用来处理数据,到了掌握基本的语法之后,便不再寻求进步.但是相信每个学习python的人都知道pythonic这个单词,这个词语很难定义,全靠心领神会,但大家心中都认同Tim Peters的<The Zen of Python>中提到的几点: 美胜丑,显胜隐,简胜杂,杂胜乱,平胜陡,疏胜密…
Sublime Text 2下搭建Python环境时,最容易出的错误就是Python环境配置错误,导致build(Ctrl+B)后没有任何反应. 关于Python编程环境的配置,网上很容易搜索到.先默认你已经在windows上安装好了Python编译环境,并且在sublime text 2中已经安装好了必要的插件.下边我们就直接配置Python了,让Python代码能够在Sublime Text 2里欢快的跑起来.常见的配置主要是两种. 一.在Windows高级系统设置里设置好环境变量的系统变量…