python写法教程_Python基础教程——代码规范

本文介绍了Python编程中的代码规范,包括编码、代码格式、引号使用、空行、import语句等方面的详细规则,帮助读者理解如何编写清晰、一致且易于维护的Python代码。

在开始学习Python之前,我们需要了解Python代码的规范,正所谓“无规矩不成方圆”,一行不合乎编程规矩的代码,会为你埋下不停报错的隐患。

提前知晓代码规范,可以帮助你在后续的学习中逻辑清晰,降低报错率的同时,还能为你养成良好的编程习惯。

话不多说,直接开讲,咱们先上目录。编码

代码格式

import语句

空格

换行

docstring

编码

百度对编码的解释,是将信息从一种新式或格式转变为另一种形式的过程,在计算机硬件中,编码就是利用代码来表示各组数据资料,使计算机能够读懂这行代码并对信息进行分析和处理。

在Python的编程过程中,需要注意以下两点:如无特殊情况, 文件一律使用 UTF-8 编码

如无特殊情况, 文件头部必须加入#-*-coding:utf-8-*-标识

代码格式

缩进

同一使用4个空格进行缩进,就是一个Tab

行宽

每行代码尽量不要超过80个字符(特殊情况下可超过,但最长不得超过120)

如果代码过长,可能存在着以下三种问题:这在查看 side-by-side 的 diff 时很有帮助

方便在控制台下查看代码

太长可能是设计有缺陷

引号

编码过程中,如果需要计算机直接输出你想要的信息,我们就要用到引号,自然语言用双引号,机器标示用单引号,代码中多数使用单引号,举个例子:自然语言 使用双引号 "..."

例如错误信息;直接采用这种方式"错误信息"

机器标识 使用单引号 '...' 例如 dict 里的 key

正则表达式 使用原生的双引号 r"..."

文档字符串 (docstring) 使用三个双引号 """......"""

空行

模块级函数和类定义之间空两行;

类成员函数之间空一行;class A:

def __init__(self):

pass

def hello(self):

pass

def main():

pass

可以使用多个空行分隔多组相关的函数

函数中可以使用空行分隔出逻辑相关的代码

import语句

编写的正确方式,应该是分行书写#正确的写法

import os

import sys

# 不推荐的写法

import sys,os

# 正确的写法

from subprocess import Popen, PIPE

import语句应该放在文件头部,置于模块说明及docstring之后,于全局变量之前;

import语句应该按照顺序排列,每组之间用一个空行分隔

import os

import sys

import msgpack

import zmq

import foo

导入其他模块的类定义时,可以使用相对导入from myclass import MyClass

空格

在二元运算符两边各空一格[=,-,+=,==,>,in,is not, and]:# 正确的写法

i = i + 1

submitted += 2

y = y * 2 - 1

hypot2 = x * x + y * y

c = (a + b) * (a - b)

# 不推荐的写法

i=i+1

submitted +=2

y = y*2 - 1

hypot2 = x*x + y*y

c = (a+b) * (a-b)

函数的参数列表中,,之后要有空格

# 正确的写法

def complex(real, imag):

pass

# 不推荐的写法

def complex(real,imag):

pass

函数的参数列表中,默认值等号两边不要添加空格

# 正确的写法

def complex(real, imag=0.0):

pass

# 不推荐的写法

def complex(real, imag = 0.0):

pass

左括号之后,右括号之前不要加多余的空格# 正确的写法

spam(ham[1], {eggs: 2})

# 不推荐的写法

spam( ham[1], { eggs : 2 } )

字典对象的左括号之前不要多余的空格# 正确的写法

dict['key'] = list[index]

# 不推荐的写法

dict ['key'] = list [index]

不要为对齐赋值语句而使用的额外空格

# 正确的写法

x = 1

y = 2

long_variable = 3

# 不推荐的写法

x = 1

y = 2

long_variable = 3

换行

if/for/while一定要换行:# 正确的写法

if foo == 'blah':

do_blah_thing()

# 不推荐的写法

if foo == 'blah': do_blash_thing()

禁止复合语句,即一行中包含多个语句:# 正确的写法

do_first()

do_second()

do_third()

# 不推荐的写法

do_first();do_second();do_third();

使用反斜杠\换行,二元运算符+ .等应出现在行末;长字符串也可以用此法换行session.query(MyTable).\

filter_by(id=1).\

one()

print 'Hello, '\

'%s %s!' %\

('Harry', 'Potter')

docstring

docstring文档字符串是一个重要的工具,用于解释文档程序,帮助你的程序文档更加易懂。

其最需要注意的规范有两点:所有的公共模块、函数、类、方法,都应该写 docstring 。私有方法不一定需要,但应该在 def 后提供一个块注释来说明。

docstring 的结束"""应该独占一行,除非此 docstring 只有一行。

打个比方del function():

'''say something here!

'''

pass

print(function.__doc__) # 调用doc

输出结果为say something here!

不难发现,代码的规范是为了保证Python的简洁与优雅,养成这种良好的编程习惯,也方便我们日后对自己的代码进行复查检修。

以上便是今天分享Python代码规范中的简明概述,明天讲述的是代码规范中的注释,在正式进入我们的Python学习后,我会在每天的文章背后附上一个小练习题,并附上源码。

当然,还是希望你们先试着做一下,再与源码进行比对,查漏补缺。

最后,助你学有所成~

欢迎你关注我的公主号《Python小白集训营》,每日更新零基础小白入门Python的教程和实操,回复关键词还能获得Python学习大礼包哦~

第1~3章主要介绍Python基本概述与基础编程方面的内容,包括Python基本介绍、Python开发环境搭建、Python基础语法、数据类型与运算符方面的内容。   第4章主要介绍Python的几种典型控制结构,事实上,控制结构在编程中非常重要,对于这一部分内容建议重点掌握,要求掌握得非常熟练,尤其是循环结构部分。   第5章和第6章主要介绍Python中稍微复杂一些的基础知识,包括迭代与生成、函数、模块等基础知识。   第7章和第8章主要介绍Python面向对象编程方面的知识,对于这一部分的知识尽量用了比较通俗的案例进行讲解,希望大家可以更好地掌握,因为后续如果想做一些大型的项目,常常会用面向对象的编程思想去编程。   第9~12章主要介绍Python基础中的一些提升部分的知识,主要包括则表达式、数据库操作、文件操作、异常处理等,这一部分的知识事实上我们在实际项目中会常常遇到,用得非常多,是基础提升的关键部分。   第13章主要为大家介绍一个火车票查询与自动订票的项目,主要目的是希望读者可以运用之前学过的基础知识完成这个项目,将基础知识运用于项目开发实践。   第14章主要介绍了一个2048小游戏项目,主要目的是希望读者可以通过此2048小游戏项目,熟练掌握Python的基础知识,将Python基础知识融会贯通,并完成一个好玩的小游戏项目,培养综合运用知识的能力。   通过这14章的学习,目的是希望读者可以对Python基础有一个全面的掌握,同时,书中涉及的代码,希望读者可以自己手动输入一遍,这样可以更好地掌握相关知识。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值