关键词不能为空

当前您在: 主页 > 英语 >

Python 程序代码总结 90 条建议

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-09 22:42
tags:

-

2021年2月9日发(作者:2029)


Python


程序代码总结



90


条建议



如果你也在学



Python


,准备要学习



Python


,希望这篇文章对你有用。



1.


首先



建议


1


、理解



Pythonic


概念—


-


详见



Python


中的《


Python< /p>


之禅》



建议


2


、编写



Pythonic


代码


< p>


1



避免不规范代码,


比如只用大小写区分变量、


使用容易混淆的变量名、

< p>
害怕过长变量名等。有时候长的变量名会使代码更加具有可读性。




2



深入学习



Python


相关知识,


比如语言特性、


库特性等,


比如

Python


演变过程等。


深入学习一两个业内公认的



Pythonic


的代码库,


比如


Flask


等。



建议


3


:理解



Python




C


的不同之处,比如缩进与



{}


,单引号双引号,


三元操作符?,



Switch-Case


语句等。



建议


4


:在代码中适当添加注释



建议< /p>


5


:适当添加空行使代码布局更加合理



建议


6


:编写函数的

< br>


4


个原则




1


)函数设计要尽量短小,嵌套层次不宜过深




2


)函数声明应 该做到合理、简单、易用




3


)函数参数设计应该考虑向下兼容




4


)一个函数只做一件事,尽量保证函数粒度的一致性



建议


7


:将常量集中在一个 文件,且常量名尽量使用全大写字母



2.


编程惯用法



建议


8


:利用



assert


语句来发现问题,但要注意,断言



assert


会影响效




建议


9


:数据交换值时不推荐使用临时变量,而是直接



a, b = b, a


建议


10


:充分利用惰性计算(


Lazy evalua tion


)的特性,从而避免不必要


的计算


建议


11


理解枚举替代实现的缺陷


(最新版



Python


中已经加入了枚举特


性)


< p>
建议


12


:不推荐使用



type


来进行类型检查,因为有些时候



type


的结果


并不一定可靠。如果 有需求,建议使用



isinstance


函数来代替



建议

13



尽量将变量转化为浮点类型后再做除法



Python3


以后不用考虑)



建议


14


:警惕


eval()


函数 的安全漏洞,有点类似于



SQL


注入



建议


1 5


:使用



enumerate()


同时获取序列迭代的索引和值



建议< /p>


16


:分清



==




is


的适用场景,特别是在比较字符串等不可变类型


变量时(详见评论)



建议

17



尽量使用



Unicode





Python2


中编码是很让人头痛的一件事,




Python3


就不用过多考虑了



建议


18


:构建合理的包层次来管理< /p>



Module


3.


基础用法



建议


19


:有节制的使用



from



import


语句,防止污染命名空间



建议


20


:优先使用



absolute import


来导入模块(


Python3


中已经移除



relative import




建议


21



i+=1


不等于



++i


,在



Python


中,


++i


前边的加号仅表示正,


不表示操作


< /p>


建议


22


:习惯使用


with


自动关闭资源,特别是在文件读写中



建议


23


:使用



else


子句简化循环(异常处理)



建议


24


:遵循异常处理的几点基本原 则




1


)注 意异常的粒度,


try


块中尽量少写代码




2


)谨慎使用单独的



except


语句,或



except Exception


语句,而是


定位到具体异常




3


)注意异常捕获的顺序,在合适的层次处理 异常




4


) 使用更加友好的异常信息,遵守异常参数的规范



建议


25


:避免



finally


中可能发生的陷阱



建议


26


:深入理解

< br>


None


,正确判断对象是否为空。



建议


27


:连接字符串应优先使用



join


函数,而不是


+


操作



建议


28


:格式化字符串时尽量使用



format


函数,而不是



%


形式



建 议


29


:区别对待可变对象和不可变对象,特别是作为函数参数 时



建议


30



[], {}



()


:一致的容器初始化形式。使用列表解析可以使代码更


清晰,同时效率更高



建议


31


:函数 传参数,既不是传值也不是传引用,而是传对象或者说对象


的引用



建议


32


:警惕默认参数潜在的问 题,特别是当默认参数为可变对象时



建议

33


:函数中慎用变长参数



args




kargs




1


)这种使用太灵活,从而使得函数签名不够清晰,可读性较差




2


)如果因为函数参数过多而是 用变长参数简化函数定义,那么一般该函


数可以重构



建议


34


:深入理解



str()




repr()


的区别




1


)两者之间的目标不同:


str


主要面向客户,其目的是可读性,返回形


式为用户友 好性和可读性都比较高的字符串形式;




repr


是面向



Python


解释器或者说


Pyth on


开发人员,其目的是准确性,其返回值表示



Python


解释器内部的定义


< /p>



2


)在解释器中直接输入变量,默认调 用


repr


函数,而


print(va r)


默认调



str

< br>函数




3


repr


函数的返回值一般可以用


eval


函数来还原对象




4


)两者分别调用对象的内建函数



__str__


()




__repr__


()


建议


35



分清静态方法



staticmethod


和类方法



classmethod


的使用场




4.


库的使用


建议


36


:掌握字符串的基本用法



建议


37


:按需选择

< br>


sort()




sorted()


函数



sort()


是列表在就地进行排序,所以不能排序元组等不可变类型。



sorted()


可以排序任意的可迭代类型,同时不改变原变量本身。



建议


38


:使用


co py


模块深拷贝对象,区分浅拷贝(


shallow copy


)和深


拷贝(


deep copy



-


-


-


-


-


-


-


-



本文更新与2021-02-09 22:42,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/624573.html

Python 程序代码总结 90 条建议的相关文章