iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >如何编写高质量的Python程序
  • 943
分享到

如何编写高质量的Python程序

2023-06-17 09:06:47 943人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

今天就跟大家聊聊有关如何编写高质量的python程序,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。如何编写高质量的python程序代码规范首先阅读下面的两份规范,并深入理解。Pyth

今天就跟大家聊聊有关如何编写高质量的python程序,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

如何编写高质量的python程序

代码规范

首先阅读下面的两份规范,并深入理解。

Python社区官方建议采用的Python编码风格:PEP8 中文版

Google SoC 建议的 Python 编码风格:Google Python Style Guide 中文版

写出规范的代码是写出高质量代码的***步,并且有助于培养仔细的习惯。

为了培养规范写代码的习惯,可以安装flake8这个工具,它不仅可以检查代码风格是否符合官方建议(PEP8),而且还能找出潜在的隐患(用Pyflakes做语法分析),更逆天的是还能检测到你有些函数写的太复杂(代码圈复杂度)了,更更逆天的是可以设置git commit之前必须通过这些检查。

当然具体操作需要根据自己的项目进行一些定制,比如可以忽略E501,W293。

空白项目模版

好的开始是成功的一半,写python代码就从pyempty开始吧。

GitHub上看一下那些经典的项目,WEB.py,flask, pep8,他们的项目目录都很规范,综合借鉴了一些项目的特点,我写了这个pyempty项目。

README.md 这里写你项目的简介,quick start等信息,虽然distutils要求这个文件没有后缀名,但github上如果后缀是.md的话可以直接转换成html显示。

ChangeLog.txt 该文件存放程序各版本的变更信息,也有一定的格式,参考web.py的ChangeLog.txt

LICENES.txt 这里存放你项目使用的协议,不要编写自己的协议。

requirements.txt 如果你的项目需要依赖其它的python第三方库,在这里一行一个写出来,可能pip install的时候能自动帮你安装

setup.py 安装脚本,后面详细介绍

docs 里面存放你的项目文档,如概要设计,详细设计,维护文档,pydoc自动生成的文档等,强烈推荐大家使用markdown格式编写文档

src 这个目录里存放项目模块的主要代码,尽量不要把模块目录直接放到根目录,模块代码目录可以在setup.py里指定的

tests 这个目录存放所有单元测试性能测试脚本,单元测试的文件确保以test_做前缀,这样distutils会自动打包这些文件,并且用python -m unittest discover -s ./ -p 'test_*.py' -v 可以直接执行这些测试

单元测试

Martin Fowler:"在你不知道如何测试代码之前,就不该编写程序。而一旦你完成了程序,测试代码也应该完成。除非测试成功,你不能认为你编写出了可以工作的程序。"

我们有很多理由不写单元测试,归根结底是懒,虽然代码大全上说:

大部分研究都发现,检测比测试的成本更小。NASA软件工程实验室的一项研究发现,阅读代码每小时能够检测出来的缺陷要比测试高出80%左右(Basili and Selby 1987)。后来,IBM的一项研究又发现,检查发现的一个错误只需要3.5个工作时,而测试则需要花费15-25个工作时(Kaplan 1995)。

但是单元测试还是让别人相信你的代码有很高质量的最有力证据。

好了,请详细阅读:

深入python3.0: 单元测试-2.x也适用

Unit testing framework 不完整中文版

文档

敏捷开发不是提倡什么文档也不写,没有文档就没有传承和积累,轮岗或新人接手任务就会遇到很大的麻烦,所以我决定每个项目最少要写以下文档:

nalysis.model.md 概要设计文档,不同于README.md文件,该文档应该写于项目开发之前,把项目有哪些功能,大概分几个模块等项目整体概述信息写一下。

design.model.md 详细设计文档,不用太详细,至少把项目依赖哪些东西,谁依赖这个项目,重要算法流程描述,代码整体结构等写出来。

maintain.md 维护文档,这个我觉得最重要,你的服务都记录哪些日志,需要监控哪些业务指标,如何重启,有哪些配置项等,没这些东西,你的项目很难运维

上面这些文档都是项目全局性的文档,不适合写在docstring或注视里,所以要有单独的文档。

打包

python有专门的模块打包系统distutils,你可以用这套机制把你的代码打包并分发到Pypi上,这样任何人都可以用pip或easy_install安装你的模块。

如果你开发的是内部项目,还可以用mypypi架设私有的pypi,然后把项目的大的版本更新发布到内部的pypi上,配置管理人员和运维人员可以很方便的从pypi上拉取代码安装到测试环境或生产环境。

发布大版本的时候要给版本命名及编写ChangeList,可以参考Git Pro的相关章节,主要记住以下几个命令。

git tag -a v0.1 -m 'my test tag'  #给大版本命名,打Tag  git describe master #给小版本命名,Git将会返回一个字符串,由三部分组成:最近一次标定的版本号,加上自那次标定之后的提交次数,再加上一段SHA-1值  git shortlog --no-merges master --not v0.1 #生成版本简报,ChangeList

python有自己的打包机制,所以一般不要用git arcHive命令。

当然大版本管理用pypi管理比较合适,小的bug fix,紧急上线等好多公司都是用git直接从生产环境拉代码更新,因为git,svn等可以很方便的撤销某次更新,回滚到某个位置。

看完上述内容,你们对如何编写高质量的Python程序有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注编程网Python频道,感谢大家的支持。

--结束END--

本文标题: 如何编写高质量的Python程序

本文链接: https://www.lsjlt.com/news/288130.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何编写高质量的Python程序
    今天就跟大家聊聊有关如何编写高质量的Python程序,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。如何编写高质量的python程序代码规范首先阅读下面的两份规范,并深入理解。Pyth...
    99+
    2023-06-17
  • 如何编写高质量的JavaScript代码
    这期内容当中小编将会给大家带来有关如何编写高质量的JavaScript代码,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。编写可维护的代码软件的BUG修复需要花费大量的精力...
    99+
    2024-04-02
  • 如何编写高质量 JavaScript 代码
    目录一、易阅读的代码1、统一代码格式2、去除魔术数字3、单一功能原则二、高性能的代码1、优化算法2、使用内置方法3、减少作用域链查找4、避免做重复的代码三、健壮性的代码1、使用新语法...
    99+
    2024-04-02
  • 你知道如何使用Python shell函数编写高质量的编程算法吗?
    Python是一种流行的编程语言,它被广泛应用于各种领域。Python的成功在于它的简单性和易用性。Python提供了许多内置函数和库,使得编写高质量的编程算法变得更加容易。在本文中,我们将讨论如何使用Python shell函数编写高质量...
    99+
    2023-07-08
    shell 函数 编程算法
  • 程序员怎么写出高质量的代码程序
    本篇内容主要讲解“程序员怎么写出高质量的代码程序”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“程序员怎么写出高质量的代码程序”吧!每个变量的命名都深思熟虑普通程...
    99+
    2024-04-02
  • 面试必备:如何使用 Python 编写高质量的 HTTP 接口?
    在当今互联网时代,HTTP 接口的重要性不言而喻。它们是许多应用程序之间交流数据的主要方式。因此,编写高质量的 HTTP 接口是面试时的必备技能。本文将介绍如何使用 Python 编写高质量的 HTTP 接口,并提供一些实用的代码示例。 ...
    99+
    2023-09-26
    接口 面试 http
  • Web前端开发如何编写高质量代码
    这篇文章将为大家详细讲解有关Web前端开发如何编写高质量代码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。(P4) Web标准由一系列标准组合而成,其核心理念是将网页的结构、样式和行为分离开来,所以它可以...
    99+
    2023-06-08
  • 如何编写 Python 程序
    如何编写 Python 程序 从今以后,保存和运行 Python 程序的标准步骤如下: 对于 PyCharm 用户 打开 PyCharm。 以给定的文件名创建新文件。 输入案例中给出的代码。 右键并运行当前文件。 注意:每当你需要提供...
    99+
    2023-01-31
    程序 Python
  • Python 中如何编写高效的 Spring 应用程序?
    Python 和 Spring 是两个非常流行的编程语言和框架,它们分别在不同的领域中广泛应用。但是,在某些情况下,我们需要将它们结合起来,以创建高效的应用程序。在本文中,我们将探讨如何使用 Python 编写高效的 Spring 应用程序...
    99+
    2023-08-31
    教程 spring numpy
  • 如何写出高质量JS代码
    这篇文章主要介绍如何写出高质量JS代码,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、如何书写可维护性的代码当出现bug的时候如果你能立马修复它是最好的,此时解决问题的四路在你脑中...
    99+
    2024-04-02
  • JavaScript的编程技巧:如何提高代码质量?
    JavaScript是一种广泛使用的编程语言,可以用于开发各种类型的应用程序,包括网站、桌面应用程序、移动应用程序等。然而,编写高质量的JavaScript代码并不容易。在本文中,我们将探讨一些JavaScript编程技巧,以提高代码质量。...
    99+
    2023-10-15
    编程算法 javascript git
  • 怎么编写高质量的web开发代码
    本文小编为大家详细介绍“怎么编写高质量的web开发代码”,内容详细,步骤清晰,细节处理妥当,希望这篇“怎么编写高质量的web开发代码”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。Spring、Apache Com...
    99+
    2023-06-17
  • C++高质量编程有哪些
    本篇内容主要讲解“C++高质量编程有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“C++高质量编程有哪些”吧!一、你需要一个函数将一个数组赋值为等差数列,并将会在函数的外部使用它。不合理: ...
    99+
    2023-06-17
  • 如何在 Windows 上用 Python 编写高效的并发程序?
    Python 作为一种高级编程语言,越来越受到程序员的喜爱。它有简洁的语法、丰富的库和强大的面向对象编程能力。Python 也是一种非常适合编写并发程序的语言,可以有效地利用多核处理器的计算资源,提高程序的性能。 在 Windows 平台...
    99+
    2023-11-09
    面试 并发 windows
  • Python 编程算法:如何使用二维码提高代码质量?
    二维码是一种快速、简便的信息编码方式,它可以把大量的信息压缩成一个小小的二维码图形。在编程中,我们可以利用二维码来提高代码的质量和可读性。本文将介绍如何使用 Python 编程算法来实现二维码的生成和解码,并演示如何将其应用于实际项目中。...
    99+
    2023-08-20
    二维码 leetcode 编程算法
  • 如何用接口写高质量PHP代码
    本篇内容介绍了“如何用接口写高质量PHP代码”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!      &nbs...
    99+
    2023-06-25
  • 编写高质量JS变量的优秀做法有哪些
    本篇内容主要讲解“编写高质量JS变量的优秀做法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“编写高质量JS变量的优秀做法有哪些”吧!1.首选 const,...
    99+
    2024-04-02
  • GO语言编程实践:如何提高编程效率和质量?
    GO语言是一种快速高效的编程语言,随着其在互联网领域的广泛应用,越来越多的开发者开始学习和使用它。但是,在实际编程中,如何提高编程效率和质量却是一个需要探讨的问题。本文将从以下几个方面介绍GO语言编程实践中如何提高编程效率和质量。 一、使用...
    99+
    2023-11-05
    开发技术 编程算法 并发
  • 如何在 Go 语言中编写高质量的 API 文件并实现最佳编程算法?
    Go 语言是一种快速、安全、高效的编程语言,它广泛应用于 Web 开发、网络编程、云计算等领域。在开发过程中,编写高质量的 API 文件和实现最佳编程算法是非常重要的。本文将介绍如何在 Go 语言中编写高质量的 API 文件并实现最佳编程算...
    99+
    2023-06-24
    api 文件 编程算法
  • 如何编写高效的PL/SQL报表程序
    编写高效的PL/SQL报表程序需要遵循一些最佳实践和优化技巧,以下是一些建议: 优化查询:确保你的SQL查询语句是高效的,包括使...
    99+
    2024-05-07
    PL/SQL
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作