编写优美代码的七条规范(Python版)

编程是一种与计算机系统通信的语言。交流就是与某人分享思想。二进制语言是计算机的最核心的语言。但是在前端,我们有很多种语言。这些语言使用解释器将前端代码转换为二进制代码。基本上,系统对一行代码执行大量内部操作。为了与系统通信,我们需要给出清晰易读的命令。这对系统和代码查看器都很有帮助。一些程序员最初编写的代码行很高,这会影响程序的执行时间和编译时间。作为一个程序员必须知道一种特定编程语言的所有快捷方法和内置函数。使用快捷方式和内置函数来减少代码行和减少执行时间。
程序员编写的程序必须是可读的。对新的程序员和学习者有用的评价。作为一个初学者,他们在程序中写了很多不需要的行。这会影响程序的可读性和清晰度。因此,使用以下规则来减少代码行,并提供任何编程语言的可读代码。
现在,我们使用python语言来解释这7条规则。
规则1-使用最新版本的Python
Python是对语言的简单理解。它提供了简单的语法和简单的代码行。Python是通过一个致力于保持软件最新和健壮的开发人员社区来维护的。每一个新版本的语言在技术上都会比以前更快、更优化,所以计划好你的行动是个好主意。只需确保您最喜欢的支持库与最新版本兼容。

规则2-避免使用不必要的循环
在编程语言中,循环和方法需要更多的执行时间。这就是为什么我们要减少程序中的循环。在程序中循环一次或多次执行的代码,直到条件变为假。所以不需要的循环方法会增加程序运行时间。在编程中,循环对于一个特定的问题是必须的,我们肯定会使用循环来解决这个问题。否则,不要对程序使用循环。给出一个不需要的循环程序的例子供参考。
例子:

更有效的方法:

规则3-最好使用内置函数
python语言在库中有很多内置函数。在实时编写一个正常的逻辑程序,它会自动执行更多的行数。而不是使用内置函数来减少代码行和执行时间。什么是内置函数意味着它的一段代码已经在开发期间为一个特定的进程编写的。在安装文件中有自己的代码。内置函数有以下的优点。
- 减少代码循环
- 把复杂的问题分解成更简单的代码段。
- 提高代码整洁度
- 提高代码阅读性
规则4-多重分配和元组拆包
我经常发现Python程序员没有充分利用多个赋值。多个赋值允许您在一行代码中同时分配多个变量。python的多值赋值如下:

规则5-算法和数据结构
在编程语言中,为了使代码运行得更快,您可以做的最重要的事情是在编写任何代码之前花两分钟时间,并考虑您将要使用的数据结构。查看基本python数据结构的时间复杂性,并根据代码中最常用的操作来使用它们。类似地,继续阅读所有来源的关于您可以使用的最有效的数据结构和算法。对常见的数据结构如节点和图形进行清点,并在最合适的情况下记住或保存一份方便的日志。
规则6-确保代码完美运行##
人们有自己的编码风格。使用你最熟悉的编码风格。对于第一次迭代,至少要使代码有效,并提交。看看它是否通过了所有的测试用例。如果有些测试用例通过了,而另一些测试用例失败了,比如内存问题,那么您就知道还有一些工作要做。

规则7-代码结构要优美
当逻辑代码行超过可接受的限制时,需要将其拆分为多个物理行,如果行的最后一个字符是反斜杠,则python解释器将连接连续的行。这在某些情况下很有帮助,但通常应该避免,因为它很脆弱:在行尾的反斜杠后面添加一个空白将破坏代码,并可能产生意外的结果。
更好的解决方案是在元素周围使用括号。如果在行尾有一个未闭合的圆括号,python解释器将连接下一行,直到圆括号闭合为止。大括号和方括号也有同样的行为。
然而,通常情况下,必须拆分一条很长的逻辑线意味着你试图同时做太多的事情,这可能会妨碍可读性。
不好的结构:

不错的结构:

关注"Python做些事",祝大家在代码界一帆风顺,各位大佬,干杯

编写优美代码的七条规范(Python版)的更多相关文章
- 代码这样写更优雅(Python版)
要写出 Pythonic(优雅的.地道的.整洁的)代码,还要平时多观察那些大牛代码,Github 上有很多非常优秀的源代码值得阅读,比如:requests.flask.tornado,笔者列举一些常见 ...
- 如何使用 Pylint 来规范 Python 代码风格
如何使用 Pylint 来规范 Python 代码风格 转载自https://www.ibm.com/developerworks/cn/linux/l-cn-pylint/ Pylint 是什么 ...
- iOS开发:代码通用性以及其规范 第一篇(附带,自定义UITextView\进度条\双表显示\瀑布流 代码设计思路)
在iOS团队开发中,我见过一些人的代码,也修改过他们的代码.有的人的代码写的非常之规范.通用,几乎不用交流,就可以知道如何修改以及在它基础上扩展延生.有的人的代码写的很垃圾,一眼看过去,简直会怀疑自己 ...
- 以优美方式编写JavaScript代码
英文原文:CoffeeScript: The beautiful way to write JavaScript 我用 JavaScript 编程很多年了,写了大量的 JavaScript 代码,即便 ...
- 25 【python入门指南】如何编写测试代码
python如何编写测试代码 python内置了unittest,使得写应用层的单元测试变得超乎寻常的简单. 1,执行单个测试函数 #!/bin/python import unittest clas ...
- Pycharm配置autopep8让Python代码更符合pep8规范
一.何为pep8? PEP 8官方文档 -- Style Guide for Python Code PEP8中文翻译(转) 二.Pycharm中配置pep8 Pycharm本身是有pep8风格检测的 ...
- 编写高质量代码的30条黄金守则-Day 01(首选隐式类型转换)
编写高质量代码的30条黄金守则-Day 01(首选隐式类型转换),本文由比特飞原创发布,转载务必在文章开头附带链接:https://www.byteflying.com/archives/6455 该 ...
- 编写高质量代码的50条黄金守则-Day 02(首选readonly而不是const)
编写高质量代码的50条黄金守则-Day 02(首选readonly而不是const),本文由比特飞原创发布,转载务必在文章开头附带链接:https://www.byteflying.com/archi ...
- 最新的JavaScript核心语言标准——ES6,彻底改变你编写JS代码的方式!【转载+整理】
原文地址 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和for-of循环 生成器 Generators 模板字符串 不定参数和默认参数 解构 Destructu ...
随机推荐
- (转)HttpServletResquest对象
HttpServletRequest对象代表客户端的请求,当客户端通过HTTP协议访问服务器时,HTTP请求头中的所有信息都封装在这个对象中,通过这个对象提供的方法,可以获得客户端请求的所有信息. 1 ...
- tomcat在linux下安装
1.下载地址: https://tomcat.apache.org/download-90.cgi 2.上传linux 3.查看是否上传成功 4.解压: 5.进入后,查看README.md文件,可以查 ...
- Linux服务器内存监控—每小时检查&超出发送邮件&重启占用最高的Java程式
简介与优点 使用该脚本能自行判断系统内存使用情况是否超出设定百分比 能在超出预警值时执行重启程式的操作 能记录重启过程,并将具体LOG邮件发送给指定收信人 可以设定Crontab排程,达成每隔一段时间 ...
- 一些JAVA题目
进程间通信方式有哪些 1)管道 管道分为有名管道和无名管道 无名管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有亲缘关系的进程间使用.进程的亲缘关系一般指的是父子关系.无明管道一般用于两个 ...
- Centos-检查文件系统并尝试修复-fsck
fsck 检查文件系统并尝试修改错误,修复对象为设备,本质上是调用 /sbin/fsck.filesystemName 命令, filesystemName是指定设备的文件系统类型,如图分区中有文件丢 ...
- Centos-链接-ln
ln 用来在文件或者目录之间创建链接,分为软链接和硬链接,硬链接依据文件的inode来进行链接,linux系统中允许存在多个inode号,文件真正的删除,是指向这个文件block的inode为0则该数 ...
- Python-语法糖(装饰器)
什么是高阶函数? -- 把函数名当做参数传给另外一个函数,在另外一个函数中通过参数调用执行 #!/usr/bin/python3 __author__ = 'beimenchuixue' __blog ...
- python3的基础数据类型
看了很多文档,想自己整理一下关于python的数据类型.说干就干,下面接上. 首先,了解 常量与变量. 常量是什么?常量是指在整个程序操作过程中其值保持不变的数据: 变量是什么?变量即在程序运行过程中 ...
- sqli-labs第一关 详解
sqli-labs第一关 方法一:手工注入 方法二:sqlmap工具 两种方式,都可以学学,顺便学会用sqlmap,也是不错的.不多说,我们开始吧 方法一: 来到第一关,图上说我们需要一个数字的参数 ...
- 《kubernetes + .net core 》dev ops部分
目录 1.kubernetes 预备知识 1.1 集群资源 1.1.1 role 1.1.2 namespace 1.1.3 node 1.1.4 persistent volume 1.1.5 st ...