作者|ANIRUDDHA BHANDARI 编译|VK 来源|Analytics Vidhya
概述
Python风格教程将使你能够编写整洁漂亮的Python代码
在这个风格教程中学习不同的Python约定和Python编程的其他细微差别
介绍
你有没有遇到过一段写得很糟糕的Python代码?我知道你们很多人都会点头的。
编写代码是数据科学家或分析师角色的一部分。另一方面,编写漂亮整洁的Python代码完全是另一回事。作为一个精通分析或数据科学领域(甚至软件开发)的程序员,这很可能会改变你的形象。
那么,我们如何编写这种所谓漂亮的Python代码呢?
欢迎学习Python风格教程
数据科学和分析领域的许多人来自非编程背景。我们先从学习编程的基础知识开始,接着理解机器学习背后的理论,然后开始征服数据集。
在这个过程中,我们经常不练习核心编程,也不注意编程惯例。
这就是本Python风格教程将要解决的问题。我们将回顾PEP-8文档中描述的Python编程约定,你将成为一个更好的程序员!
目录
为什么这个Python风格的教程对数据科学很重要?
什么是PEP8?
了解Python命名约定
Python风格教程的代码布局
熟悉正确的Python注释
Python代码中的空格
Python的一般编程建议
自动格式化Python代码
为什么这个Python风格的教程对数据科学很重要
有几个原因使格式化成为编程的一个重要方面,尤其是对于数据科学项目:
- 可读性
好的代码格式将不可避免地提高代码的可读性。这不仅会使你的代码更有条理,而且会使读者更容易理解程序中正在发生的事情。如果你的程序运行了数千行,这将特别有用。
你会有很多的数据帧、列表、函数、绘图等,如果不遵循正确的格式准则,你甚至会很容易失去对自己代码的跟踪!
- 协作
如果你在一个团队项目上合作,大多数数据科学家都会这样做,那么好的格式化就成了一项必不可少的任务。
这样可以确保代码被正确理解而不产生任何麻烦。此外,遵循一个通用的格式模式可以在整个项目生命周期中保持程序的一致性。
- Bug修复
当你需要修复程序中的错误时,拥有一个格式良好的代码也将有助于你。错误的缩进、不恰当的命名等都很容易使调试成为一场噩梦!
因此,最好是以正确的编写风格来开始编写你的程序!
考虑到这一点,让我们快速概述一下本文将介绍的PEP-8样式教程!
什么是PEP-8
PEP-8或Python增强建议是Python编程的风格教程。它是由吉多·范罗森、巴里·华沙和尼克·科格兰写的。它描述了编写漂亮且可读的Python代码的规则。
遵循PEP-8的编码风格将确保Python代码的一致性,从而使其他读者、贡献者或你自己更容易理解代码。
本文介绍了PEP-8指导原则中最重要的方面,如如何命名Python对象、如何构造代码、何时包含注释和空格,最后是一些很重要但很容易被大多数Python程序员忽略的一般编程建议。
让我们学习编写更好的代码!
官方PEP-8文档可以在这里找到。
https://www.python.org/dev/peps/pep-0008/
了解Python命名约定
莎士比亚有句名言:“名字里有什么?”. 如果他当时遇到了一个程序员,他会很快得到一个答复——“很多!”.
是的,当你编写一段代码时,你为变量、函数等选择的名称对代码的可理解性有很大的影响。看看下面的代码:
# 函数 1
def func(x):
a = x.split()[0]
b = x.split()[1]
return a, b
print(func('Analytics Vidhya'))
# 函数 2
def name_split(full_name):
first_name = full_name.split()[0]
last_name = full_name.split()[1]
return first_name, last_name
print(name_split('Analytics Vidhya'))
# 输出
('Analytics', 'Vidhya')
('Analytics', 'Vidhya')
这两个函数的作用是一样的,但是后者提供了一个更好的直觉让我们知道发生了什么,即使没有任何注释!
这就是为什么选择正确的名称和遵循正确的命名约定可以在编写程序时可以产生巨大的不同。话虽如此,让我们看看如何在Python中命名对象!
开头命名
这些技巧可以应用于命名任何实体,并且应该严格遵守。
- 遵循相同的模式
thisVariable, ThatVariable, some_other_variable, BIG_NO
- 避免使用长名字,同时也不要太节俭的名字
this_could_be_a_bad_name = “Avoid this!”
t = “This isn\’t good either”
- 使用合理和描述性的名称。这将有助于以后你记住代码的用途
X = “My Name” # 防止这个
full_name = “My Name” # 这个更好
- 避免使用以数字开头的名字
1_name = “This is bad!”
- 避免使用特殊字符,如@、!、