码迷,mamicode.com
首页 > 编程语言 > 详细

编写高质量代码改善python程序91个建议学习01

时间:2016-04-10 09:07:53      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:

编写高质量代码改善python程序91个建议学习

第一章

建议1:理解pythonic的相关概念

狭隘的理解:它是高级动态的脚本编程语言,拥有很多强大的库,是解释从上往下执行的

特点:

美胜丑,显胜隐,简胜杂,杂胜乱,平胜陡,疏胜密

 

python定义

#python排序

def quicksort(arr):

    less=[];greater=[]

    if len(arr)<=1:

        return arr

    pivot=arr.pop()

    for x in arr:

        if x<=pivot:

            less.append(x)

        else:

            greater.append(x)

    return quicksort(less)+[pivot]+quicksort(greater)

arr=[9,8,4,5,32,64,2,1,0,10,19,27]

print (quicksort(arr))

#结果:[0, 1, 2, 4, 5, 8, 9, 10, 19, 27, 32, 64]

 

代码风格

 

多个变量之间的交换方式,基本语法

a,b=b,a

原理

对于多变量之间的转换

采用的是异或方式实现多个变量之间的转换,如下

a ^=b;

b^=a;

a^=b;

请看这里面的解释 :http://blog.csdn.net/magictong/article/details/3321232

http://www.cnblogs.com/haoshine/p/5117433.html

http://lionelliu.com/?p=970

 

异或的解释

&按位与            二进制中两个数,二进位都为1时,结果为1,否则为0.

|按位或             二进制中两个数,二进位有1时,结果都为1,否则为0.

^按位异或         二进位中两个数,二进位想异时,结果为1.

~翻转        x的翻转是-(x+1),即正数变负数,负数变正数

 

#遍历

def fo_r(d):

    #第一种遍历

    for i in range(len(d)):

        return #语句体

    #第二种遍历

    for i in d:

        return

 

 

关闭文件

with它是一种含有迭代器的风格方式

with open() as f:

   pass

切片

s=[1,2,3,4]

s[::-1]

推荐使用

list(reversed(s))

连接字符串:%s,+

推荐.format(*args,**kw)

使用python的框架或者库来提升你的工作效率

框架如:django,tornado,flask

:time,requests

如果需要可以去pipy官方下载,

pipy地址如下:https://pypi.python.org/pypi

 

 

编写pythonic代码

规则

    1:要避免劣化代码

(1):避免只用大小写来区分不同对象

(2):避免使用容易引起混淆的名称,包括重复使用上下文中已经存在的变量名来表示不同的类

 

型,误用内建方法或者函数

(3)不要害怕使用过长的变量名

 

编写高质量代码改善python程序91个建议学习01

标签:

原文地址:http://www.cnblogs.com/mhxy13867806343/p/5373350.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!