python 编程规范有哪些?
Python 编程规范主要包括代码布局、命名规范、注释规范、函数编写规范等多个方面,下面给出一些常见的编程规范及其示例代码。
1. 代码布局规范
代码布局规范主要是指代码的缩进、行宽、空行、换行等方面,下面是一些常见的代码布局规范:
- 使用四个空格作为一个缩进级别,不要使用制表符。
- 每行代码最多不超过 79 个字符,如果需要换行可以使用括号、\ 符号或者三个双引号。
- 在函数之间、类之间和逻辑块之间添加一行空白行,以提高代码可读性。
示例代码:
def my_function(arg1, arg2):
if arg1 == 'value':
result = arg1 + arg2
else:
result = arg2 - arg1
return result
2. 命名规范
命名规范主要是指变量名、函数名、类名等的命名规则,下面是一些常见的命名规范:
- 使用全小写的单词或下划线分隔的多个单词来命名变量或函数。
- 类名首字母大写,采用驼峰命名法。
- 使用前缀或后缀来命名私有变量或函数,以单下划线或双下划线开头或结尾。
示例代码:
class MyClass:
def __init__(self, name):
self._name = name
def get_name(self):
return self._name
def _helper_method(self):
pass
my_object = MyClass('John')
print(my_object.get_name())
3. 注释规范
注释规范主要是指如何编写注释,以方便别人理解你的代码,下面是一些常见的注释规范:
- 在代码中适当添加注释,以解释代码的目的和实现方法。
- 给函数和类添加文档字符串,以描述其功能和参数等信息。
- 避免使用无意义的注释,例如 “增加变量 x 的值”。
示例代码:
# This function calculates the sum of two numbers
def add_numbers(num1, num2):
"""
Calculate the sum of two numbers.
Args:
num1: First number to add.
num2: Second number to add.
Returns:
The sum of the two numbers.
"""
return num1 + num2
python的文档字符串是什么?
Python 的文档字符串是指在模块、类、方法、函数等代码段的开头使用 """ 进行多行字符串注释来描述代码段的功能、参数、返回值等信息的规范化方式。这些文档字符串可以被工具程序提取和转换为 HTML、PDF、Unix 手册页等格式的文档,并且可以被编程编辑器、交互式帮助工具等程序自动读取和显示,对于代码的使用与维护十分有帮助。
文档字符串应该被写在代码段的开头,并包含以下部分:
- 描述代码段的功能和用途。
- 描述代码段的参数名称、类型、范围和意义。
- 描述代码段的返回值类型、范围和意义。
- 描述代码段的异常和错误处理信息。
- 其他相关的注释和说明。
下面是一个函数的文档字符串示例:
def my_function(arg1, arg2):
"""
This function adds two numbers.
Args:
arg1 (int): The first number.
arg2 (int): The second number.
Returns:
int: The sum of the two numbers.
Raises:
ValueError: If either input is not an int.
Examples:
>>> my_function(2, 3)
5
>>> my_function(2, "three")
ValueError: arg2 must be an int.
"""
if not isinstance(arg1, int) or not isinstance(arg2, int):
raise ValueError("arg1 and arg2 must be ints.")
return arg1 + arg2
注意,文档字符串中的参数类型和异常处理信息只是规范化的描述,实际代码中还需要进行相应的类型判断和错误处理。
4. 函数编写规范
函数编写规范主要是指如何编写函数,以方便别人阅读和使用你的代码,下面是一些常见的函数编写规范:
- 函数应该尽可能短小,不要超过 20 行。
- 函数应该只完成一个明确的任务,而不是多个任务。
- 函数应该有一个明确的返回值,或者返回 None。
示例代码:
def calc_sum(nums):
"""
Calculate the sum of a list of numbers.
Args:
nums: A list of numbers to sum.
Returns:
The sum of the list of numbers.
"""
total = 0
for num in nums:
total += num
return total
python 编程规范有哪些?的更多相关文章
- Python编程规范(PEP8)
Python编程规范(PEP8) 代码布局 缩进 对于每一次缩进使用4个空格.使用括号.中括号.大括号进行垂直对齐,或者缩进对齐. 制表符还是空格? 永远不要将制表符与空格混合使用.Python最常用 ...
- Python 编程规范-----转载
Python编程规范及性能优化 Ptyhon编程规范 编码 所有的 Python 脚本文件都应在文件头标上 # -*- coding:utf-8 -*- .设置编辑器,默认保存为 utf-8 格式. ...
- Python编程规范及性能优化(转载)
转载地址:http://codeweblog.com/python编程规范及性能优化/
- Python学习手册之 Python 之禅、Python 编程规范和函数参数
在上一篇文章中,我们介绍了 Python 的正则表达式使用示例,现在我们介绍 Python 之禅. Python 编程规范和函数参数.查看上一篇文章请点击:https://www.cnblogs.co ...
- Python 编程规范梳理
缘由 由于项目团队中新加入了几名攻城狮, 大家之前的背景各不相同,写出的代码也是“风格迥异”.正所谓:“无规则不成方圆”,因此需要对编程进行必要的规范. 整体的思路是:依照PEP8 Python 编码 ...
- Python 编程规范 —— TODO 注释(结合 PyCharm)
编程是代码和注释的统一: TODO 自然表示需要做而未做的一些待完成的事项,有助于事后的检索,以及对整体项目做进一步的修改迭代. # TODO(kl@gmail.com): Use a "* ...
- PEP8 Python编程规范
官方文档: https://www.python.org/dev/peps/pep-0008/ ---------------------------------------------------- ...
- PEP 8 python编程规范
一 代码编排 缩进.4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格. 每行最大长度79,换行可以使用反斜杠,最好使用圆括号.换行点要在操作符的后边敲回车. 类和to ...
- python - 编程规范问题
软件目录结构规范alex_老男孩:为什么要设计好目录结构?“设计项目目录结构”,就和“胆码编码风格”一样,属于个人风格问题.对于这种风格上的规范,一直都存在两种态度: 1.一类同学认为,这种个人 ...
- Python编程规范
打破一条既定规则的两个理由: 应用这个规则将导致代码可读性下降. 为了和周围的代码保持一致. 编码: 所有的 Python 脚本文件都应在文件头标上如下标识或其兼容格式的标识: # -*- codin ...
随机推荐
- C/C++ 数据结构优先级队列的实现(使用二级指针)
#include <iostream> #include <Windows.h> #include <iomanip> //优先级队列的实现 using names ...
- C/C++ 数据结构链式队列的定义与实现
#include <iostream> #include <Windows.h> using namespace std; typedef struct _QNode{ int ...
- 如何通过dump文件定位崩溃,解决问题
1.dump文件是附加堆栈信息的存储文件的简称,文件扩展名".dmp",通过dump文件我们可以得到程序运行某一时刻的堆栈数据.2.当程序意外崩溃后,通常程序会立即中断运行,拿到这 ...
- Hive启动留下的RunJar进程不能使用Kill -9 杀不掉怎么办?
1.问题示例 [Hadoop@master Logs]$ jps 3728 ResourceManager 6976 RunJar 7587 Jps 4277 Master 3095 NameNode ...
- C++ 文件知识
#include "iostream" #include "filesystem" #include "fstream" #ifdef WI ...
- unidbgrid导出Excel到多个sheet
xls := TXlsFile.Create(true); xls.NewFile; xls.ActiveSheet := 1; xls.SheetName := '未自评人员清单'; xls.Act ...
- Hive中的高级函数
高级函数 1.炸裂函数 UDTF 通常是将数组或者集合中或者结构体(涉及到数据类型-------复杂数据类型)中的元素单个输出 特点:接收一行数据,输出一行或多行数据 2.窗口函数/开窗函数 概念:能 ...
- 百炼成钢 —— 声网实时网络的自动运维丨Dev for Dev 专栏
本文为「Dev for Dev 专栏」系列内容,作者为声网大数据算法工程师黄南薰. 01 自动运维介绍 2016 年,Gartner 创新性地提出了 AIOps 的概念[1],开创了人工智能辅助运维决 ...
- Racket while循环
Problem: 1805. 字符串中不同整数的数目 目录 lc题解地址 思路 Code lc题解地址 https://leetcode.cn/problems/number-of-different ...
- 对一些常用RDD算子的总结
虽然目前逐渐sql化,但是掌握 RDD 常用算子是做好 Spark 应用开发的基础,而数据转换类算子则是基础中的基础,因此学习这些算子还是很有必要的. 这篇博客主要参考Spark官方文档中RDD编程一 ...