零基础学Python:编程规范

news2024/9/25 13:24:46

1. 注释

python注释也有自己的规范,在文章中会介绍到。注释可以起到一个备注的作用,团队合作的时候,个人编写的代码经常会被多人调用,为了让别人能更容易理解代码的通途,使用注释是非常有效的。
在说规范之前我们有必要先看以下Python的注释有哪些 ?

  • 单行注释
  • 多行注释
  • 特殊注释

单行注释

以 # 开头, # 右边的所有东西都被当做说明文字,而不是真正要执行的程序,只起到辅助说明作用
示例代码如下:

为了保证代码的可读性, # 后面建议先添加一个空格,然后再编写相应的说明文字

多行注释(块注释)

如果注释信息很多,一行无法显示,就可以使用多行注释
要在 Python 程序中使用多行注释,可以用一对连续的 三个 引号(单引号和双引号都可以)
示例代码如下:

注释不是越多越好,对于一目了然的代码,不需要添加注释

特殊注释

关于代码规范

Python 官方提供有一系列 PEP(Python Enhancement Proposals) 文档
其中第 8 篇文档专门针对 Python 的代码格式 给出了建议,也就是俗称的 PEP 8
文档地址:PEP 8 – Style Guide for Python Code | peps.python.org
谷歌有对应的中文文档:Python风格规范 — Google 开源项目风格指南
任何语言的程序员,编写出符合规范的代码,是开始程序生涯的第一步

编程习惯的重要性

1. 可以方便排查错误
2. 方便自己看的代码
3. 便于别人看懂你的代码(团队协作)

良好的编程习惯的养成不能靠说,要靠多练,要在大量的编程中将其融入骨髓中。

一套系统应该具有统一的编程风格,任何编程风格都不可能是完美,应该从可维护性、可读性方面继续保持一种编程风格,而不要将多种编程风格混合在一套系统中,对于新手,难以理解如此多种风格的编码。
ctrl + alt + l 快速格式化代码

标识符命名规则

开发人员在程序中自定义的一些符号和名称。标识符是自己定义的, 如变量名 、函数名等

标识符的规则

标识符由字母、下划线和数字组成,且数字不能开头
python中的标识符是区分大小写的

命名规则

1、下滑线命名法

用下划线“_”来连接所有的单词,比如 hello_world
1. 见名知意
2. 起一个有意义的名字,尽量做到看一眼就知道是什么意思(提高代码可读性) 比如: 名字 就定义为name , 定义学生 用 student

2、驼峰命名法

大驼峰式命名法(upper camel case):

  • 每一个单字的首字母都采用大写字母,
    例如:FirstName、HelloWorld

小驼峰式命名法(lower camel case):

  • 第一个单词以小写字母开始;
  • 第二个单词的首字母大写,
    例如:helloWorld、firstName

  •  

注意

所有的变量名、函数名 都是用下划线命名法
类名使用大驼峰命名法

Python命名规则

  • python中的标识符是区分大小写的

     

  • 变量、函数名全部用小写与下划线
  • 常量(配置文件变量、不修改的变量)全部用大写
  • 类名用大驼峰命名法

     

关键字

什么是关键字:
python一些具有特殊功能的标识符,这就是所谓的关键字
关键字,是python已经使用的了,所以不允许开发者自己定义和关键字相同的名字的标识符
可以通过以下命令进行查看当前系统中python的关键字

输出

print() 方法用于打印输出,最常见的一个函数。
以下是 print() 方法的语法:

参数

  • objects -- 复数,表示可以一次输出多个对象。输出多个对象时,用分隔符分割。
  • sep -- 用来间隔多个对象,默认值是一个空格。
  • end -- 用来设定以什么结尾。默认值是换行符 \n,我们可以换成其他字符串。
  • file -- 要写入的文件对象。

输入

input() 函数接受一个标准输入数据,返回为 string 类型。

变量

程序就是用来处理数据的,而变量就是用来存储数据的

  • 在 Python 中,每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建
  • 等号(=)用来给变量赋值
    • = 左边是一个变量名
    • = 右边是存储在变量中的值
  • 直接使用之前已经定义的变量
  • 变量名只有在 第一次出现 才是 定义变量
  • 变量名再次出现,不是定义变量,而是直接使用之前定义过的变量
  • 在程序开发中,可以修改之前定义变量中保存的值吗?
    • 可以
    • 变量中存储的值,就是可以变的

       

变量定义之后,后续就可以直接使用了

常见错误类型

SyntaxError: unexpected EOF while parsing
语法错误,多了无法解析的符号,检查一下是否多了或者少了括号
SyntaxError: invalid character in identifier
语法错误有无效标识符,检查一下中文符号
IndexError: list index out of range
索引错误,超出索引范围,检查一下列表是否为空
TypeError: must be str, not int
数据类型错误,该数据不是正确的数据类型,比如字符串和数字直接拼接,检查一下数据类型
IndentationError: expected an indented block
缩进错误,检查一下代码的缩进是否正确
KeyError: 'fond'
键错误,字典中没有该的key对应的值,检查一下键名或者字典数据是否正确
ValueError: substring not found
值错误,输入的数据类型跟要求的不符合
NameError: name 'a' is not defined
未初始化对象,变量没有被定义
AttributeError: 'tuple' object has no attribute 'remove'
属性错误,该对象没有这个属性、方法,检查一下数据类型
SystemExit
解释器请求退出,出现在exit()函数后
IOError
输入/输出操作失败
ImportError
导入模块/对象失败,检查一下模块是否能够正常使用
UnicodeDecodeError/UnicodeEncodeError/UnicodeTranslateError
Unicode 解码/编码/转换/时的错误

最后免费分享给大家一份Python全套学习资料,包含视频、源码,课件,希望能帮到那些不满现状,想提升自己却又没有方向的朋友。

 关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

 一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、Python课程视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

在这里插入图片描述

三、Python实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

四、Python漫画教程

用通俗易懂的漫画,来教你学习Python,让你更容易记住,并且不会枯燥乏味。
在这里插入图片描述

在这里插入图片描述

五、互联网企业面试真题

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

在这里插入图片描述

在这里插入图片描述

这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/97745.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微服务综合部署——SpringBoot项目制作Docker镜像注册在Zookeeper并利用K8S技术部署

一、如果你要从头开发一个基于微服务架构的项目,项目中的服务最终要部署在k8s管理的镜像环境中,你认为应如何创建项目?与本次实验过程相比,哪些改进可以让开发更加合理高效? 第一步:搭建项目并制作合适的j…

回溯算法总结

目录介绍伪代码例题:解释:回溯算法中的优化去重伪代码剪枝常见题型子集例题全排列例题参考资料介绍 递归(DFS)是一个劲的往某一个方向搜索,而回溯算法建立在 DFS 基础之上的,但不同的是在搜索过程中,达到结束条件后&am…

SAP ABAP 扫描 ABAP 源代码(RS_ABAP_SOURCE_SCAN)

SAP ABAP 扫描 ABAP 源代码(RS_ABAP_SOURCE_SCAN) 引言: RS_ABAP_SOURCE_SCAN 是一个 SAP 标准 ABAP 报表程序,通过输入字符串文本,扫描 ABAP 源代码,列示查找字符串在 ABAP 源代码中出现的位置清单。本文…

20行python代码的入门级小游戏

0、背景: 作为一个python小白,今天从菜鸟教程上看了一些python的教程,看到了python的一些语法,对比起来(有其他语言功底),感觉还是非常有趣,就随手添了一点内容,改了一个…

【车载开发系列】CAN总线通信---总线报文格式

【车载开发系列】CAN总线通信—总线报文格式 CAN总线通信---总线报文格式【车载开发系列】CAN总线通信---总线报文格式一.什么是ISO15765二.ISO15765的目的三.单帧传输的概念四.多帧传输的概念五.诊断报文格式1)首帧FF2)连续帧CF3)流控帧FC4&…

【JavaScript】for循环

文章目录for循环案例1:两数相加案例2:绘制九九乘法表案例3:水仙花数案例4:绘制菱形案例5:计算表达式结果break和continue图片切换效果案例(轮播图结构)一、JavaScript代码二、HTML结构和CSS样式…

基于java+springmvc+mybatis+vue+mysql的演出道具租赁管理系统

项目介绍 前端页面: 功能:首页、道具出租、公告资讯、个人中心、后台管理 管理员后台页面: 功能:首页、个人中心、用户管理、商家管理、道具类型管理、道具出租管理、租赁订单管理、道具归还管理、我的收藏管理、系统管理 用户…

密西根大学张阳实验室郑伟博士在CASP15蛋白质结构预测大赛中斩获多项冠军

简报:在有着蛋白质结构预测领域奥林匹克竞赛之称的最新一届CASP比赛中(CASP15),密西根大学张阳教授和Peter Freddolino教授实验室的郑伟博士在多个比赛项目中获得冠军。其中D-I-TASSER算法(参赛名:“UM-TBM…

nodejs银行取号系统vue

目 录 1绪论 1 1.1项目研究的背景 1 1.2开发意义 1 1.3项目研究现状及内容 5 1.4论文结构 5 2开发技术介绍 7 2.1 B/S架构 7 2.2 MySQL 介绍 7 2.3 MySQL环境配置 7 3系统分析 9 3.1可行性分析 9 3.1.1技术可行性 9 3.1.2经济可行性 …

学会4种方法,掌握端到端测试处理数据..

推荐阅读: [内部资源] 想拿年薪30W的软件测试人员,这份资料必须领取~ Python自动化测试全栈性能测试全栈,挑战年薪40W 对Web应用程序运行自动化的端到端测试时,最常见的问题之一是如何处理测试数据。端到端测试通常会在通过应用…

授权服务器搭建以及授权码模式

前面的 GitHub 授权登录主要向大家展示了 OAuth2 中客户端的工作模式。对于大部分的开发者而言,日常接触到的 OAuth2 都是开发客户端,例如接入 QQ 登录、接入微信登录等。不过也有少量场景,可能需要开发者提供授权服务器与资源服务器&#xf…

Spring MVC【创建与使用】

Spring MVC【创建与使用】🍎一.Spring MVC介绍🍒1.1 什么是SpringMVC?🍒1.2 MVC 定义🍒1.3 Spring MVC 与 MVC 的区别🍒1.4 Spring MVC的基本功能🍎二. Spring MVC项目的创建🍒2.1 Spring MVC …

代码随想录DAY51 | 309.最佳买卖股票时机含冷冻期、714.买卖股票的最佳时机含手续费

文章目录309.最佳买卖股票时机含冷冻期714.买卖股票的最佳时机含手续费309.最佳买卖股票时机含冷冻期 文章讲解:代码随想录 (programmercarl.com) 题目链接:309. 最佳买卖股票时机含冷冻期 - 力扣(LeetCode) 题目: …

Efficientdet源码详解

1.参数配置 最重要的参数配置如下 -p:配置文件,需要在project文件夹下新建配置文件-c:efficientdet的版本,efficientdet B0-B7-n:windows为0,linix根据自己的需求修改--batch_size:batch大小--data_path:数据集路径-p data --batch_size 16 其中&…

【Flask框架】——20 请求钩子

在客户端和服务器交互的过程中,有些准备工作或扫尾工作需要处理,比如: 在请求开始时,建立数据库连接; 在请求开始时,根据需求进行权限校验; 在请求结束时,指定数据的交互格式。 …

Dubbo 1 分布式系统中的相关概念 1.1 大型互联网项目结构目标

Dubbo 【黑马程序员Dubbo快速入门,Java分布式框架dubbo教程】 【非常重要就完事儿 了】 1 分布式系统中的相关概念 文章目录Dubbo1 分布式系统中的相关概念1.1 大型互联网项目结构目标1.1.1 传统项目 和 互联网项目1.1.2 互联网项目特点1.1.3 大型互联网项目架构…

【2022.12.17】备战春招Day12——每日一题 + 76. 最小覆盖子串 + 24. 两两交换链表中的节点

【每日一题】1764. 通过连接另一个数组的子数组得到一个数组 题目描述 给你一个长度为 n 的二维整数数组 groups ,同时给你一个整数数组 nums 。 你是否可以从 nums 中选出 n 个 不相交 的子数组,使得第 i 个子数组与 groups[i] (下标从 0…

C++绘制菱形(曼哈顿距离求解:贼快!!!)

思路: 1.双重for循环遍历输出是最基本的 2.了解曼哈顿距离 (1)菱形的输入一定是奇数 (2)我们是思想是填充 * 怎么填呢?我们来画图看看 以 3*3 的矩阵为例子! 我们来看看 距离是怎么定义的…

LInux进程优先级和nice值

文章目录一 定义描述二 查看nice值2.1 使用top命令交互式查看nice值2.2 使用ps命令查看nice值2.3 查看程序调度策略三 修改nice值3.1 启动特定nice值的进程3.2 更改现有进程的nice级别一 定义描述 大部分情况下,计算机需要运行的进程数超过了计算机拥有CPU的核心数…

[附源码]Python计算机毕业设计后疫情时期社区居民管理系统Django(程序+LW)

该项目含有源码、文档、程序、数据库、配套开发软件、软件安装教程 项目运行 环境配置: Pychram社区版 python3.7.7 Mysql5.7 HBuilderXlist pipNavicat11Djangonodejs。 项目技术: django python Vue 等等组成,B/S模式 pychram管理等…