前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >基础知识|初入Python语法和注释(三)

基础知识|初入Python语法和注释(三)

原创
作者头像
Aion
发布2024-02-04 21:39:47
1280
发布2024-02-04 21:39:47
举报

俗话说,欲先善其事,必先利其器。作为一个小白,当选择了一门语言来学习的时候,我们的电脑得安装这个语言。「Python」 是一门编程语言,可以在服务器上使用 Python 来创建 Web 应用程序,他主要有以下用途:

  1. Web 开发(服务器端)
  2. 软件开发
  3. 数学
  4. 系统脚本
  5. 文本检索
  6. 数据筛选

前两个章节讲解了Python的的一些简单的知识,作为了解,这里再增加一个章节来描述一下Python在实际开发过程中的一些语法、怎么注释和一些变量的使用。

1 Python语法

Python的扩展名是.py就像Java语言的扩展名是.java一个道理。在Python中,我们可以直接使用python命令执行.py文件。例如:python hello.py 。在pthon文件中,通常来讲,按照国际惯例,要使用编码格式为utf-8。在编写代码中,每行的字符个数尽量不超过80个字符,当然,如果你的导入模块比较长,或者注释里面的URL比较长,这个可以除外。

代码语言:javascript
复制
# -- coding: utf-8 --

1.1 关于缩进

缩进指的是代码行开头的空格。在Python中,缩进很重要,他主要用来提示下一步的代码块的使用范围。

从上面的代码可以看出来,如果没有缩进,那么执行代码之后会有报错信息提示出来,

代码语言:javascript
复制
IndentationError: expected an indented block after 'if' statement on line 1

那锁进有限制个数吗?这是一个很好的问题,因为我们在Java中知道,这个没有限制,除了针对代码的可读性来说,好像也没有什么特殊的。那么这个在Python中呢?我们可以从代码上看下。

同样,在Python中,后续多少个没有关系,但是必须第一个要有。也就是说,空格的个数取决于你,但是至少得有一个。

「缩进规则」

关于在Python中的缩进规则,可以参考如下总结:

  • Python 采用代码缩进和冒号( : )来区分代码块之间的层次。
  • 在 Python 中,对于类定义、函数定义、流程控制语句、异常处理语句等,行尾的冒号和下一行的缩进,表示下一个代码块的开始,而缩进的结束则表示此代码块的结束。
  • Python 中实现对代码的缩进,可以使用空格或者 Tab 键实现。但无论是手动敲空格,还是使用 Tab 键,通常情况下都是采用 4 个空格长度作为一个缩进量(默认情况下,一个 Tab 键就表示 4 个空格)。
  • 对于 Python 缩进规则,初学者可以这样理解,Python 要求属于同一作用域中的各行代码,它们的缩进量必须一致,但具体缩进量为多少,并不做硬性规定。

1.2 变量

变量是存放数据值的容器。与其他编程语言不同,Python 没有声明变量的命令。首次为其赋值时,才会创建变量。

「Python 变量命名规则」

  • 变量名必须以字母或下划线字符开头
  • 变量名称不能以数字开头
  • 变量名只能包含字母数字字符和下划线(A-z、0-9 和 _)
  • 变量名称区分大小写(age、Age 和 AGE 是三个不同的变量)

当然,在Python中,也可以在一行中定义多个变量并赋值,例如:sum, index, result = 0, 0, 2但是sum, index, result = 0, 0, null 这种就不被允许,你知道为什么吗?

「关于Global关键字」

通常,在函数内部创建变量时,该变量是局部变量,只能在该函数内部使用。要在函数内部创建全局变量,您可以使用 global 关键字。另外,如果要在函数内部更改全局变量,请使用 global 关键字。

1.2 关于空行

空行主要是为了可读性高之外,还有其他的意义:

  • 顶层函数和类定义,前后用两个空行隔开
  • 编码格式声明、模块导入、常量和全局变量声明、顶级定义和执行代码之间空两行
  • 类里面方法定义用一个空行隔开
  • 在函数或方法内部,可以在必要的地方空一行以增强节奏感,但应避免连续空行

例如如下代码:

代码语言:javascript
复制
class Person:
    name

class Student:
    def functionClasses(self)
        classes

    def functionGrade(self)
        grade

注意⚠️:使用必要的空行可以增加代码的可读性,通常在顶级定义(如函数或类的定义)之间空两行,而方法定义之间空一行,另外在用于分隔某些功能的位置也可以空一行。

「空格使用规则」

  • 在二元运算符两边各空一格,比如赋值(=)、比较(==, <, >, !=, <>, <=, >=, in, not in, is, is not), 布尔(and, or, not),算术操作符两边的空格可灵活使用,但两侧务必要保持一致
  • 不要在逗号、分号、冒号前面加空格,但应该在它们后面加(除非在行尾)
  • 函数的参数列表中,逗号之后要有空格
  • 函数的参数列表中,默认值等号两边不要添加空格
  • 左括号之后,右括号之前不要加添加空格
  • 参数列表, 索引或切片的左括号前不应加空格
  • 当'='用于指示关键字参数或默认参数值时,不要在其两侧使用空格

1.3 关于命名

「模块命名」

  • 模块尽量使用小写命名,首字母保持小写,尽量不要用下划线(除非多个单词,且数量不多的情况)

「变量命名」

  • 不要使用字母I (小写的L), O (大写的O), I (大写的I)作为单字符的变量名。在有些字体里面,这些字符无法与数字0和1区分。如果想用I, 可使用L代替。
  • 变量名尽量小写, 如有多个单词,用下划线隔开。

「常量或全局变量命名」

这个同Java中一致。

  • 全部大写,如有多个单词,用下划线隔开
  • 全⼤写+下划线式驼峰

「函数(方法)命名」

  • 函数名应该小写,如有多个单词,用下划线隔开。
  • 大小写混合仅在为了兼容原来主要以大小写混合风格的情况下使用,保持向后兼容。
  • 私有函数在函数前加一个下划线_
  • 始终要将self作为实例方法的第一个参数。
  • 始终要将cls作为类方法的第一个参数。
  • 如果函数的参数名和已有关键字冲突,在最后加大意下划线比缩写或者随意拼写更好。因此class_比clss更好。

「类命名」

  • 类名使用驼峰(CamelCase)命名风格,首字母大写,私有类可用一个下划线开头。
  • 在接口被文档化并且主要被用于调用的情况下,可以使用函数的命名风格代替。
  • 对于内置的变量命名有一个单独的约定:大部分内置变量是单个单词(或者两个单词连接在一起),首字母大写的命名法只用于异常名或者内部的常量。

「注意事项」

  • 不要中英文混编
  • 不要有a、b、c这种没有意义的命名
  • 不要怕名字长就随便缩写,比如person_info 缩写成pi
  • 不要用大小写区分变量类型,比如a是int类型,A是String类型
  • 不要使用容易引起混淆的变量名
  • bool变量⼀般加上前缀 is_ 如:is_success
  • 变量名不要用系统关键字,如 dir type str等等

以下用下画线作前导或结尾的特殊形式是被公认的:

  • _single_leading_underscore(以一个下画线作前导):例如,“from M import *”不会导入以下画线开头的对象。
  • single_trailing_underscore_(以一个下画线结尾):用于避免与 Python 关键词的冲突,例如“Tkinter.Toplevel(master, class_='ClassName')”。
  • __double_leading_underscore (双下画线):从 Python 1.4 起为类私有名。
  • __double_leading_and_trailing_underscore__:特殊的(magic) 对象或属性,存在于 用户控制的(user-controlled)名字空间,例如:__init__、__import__ 或 __file__。

2 Python注释

Python中有三种形式的注释:行注释、块注释、文档注释

在Java中,我们也有行注释、块注释和文档注释,但是在Python中使用的符号不一样。

下面我们将这两种语言的注释比较一下,就可以看出来Python的注释。

Java注释

Python注释

Python注释用途

行注释

或 /* 内容 */或 /** 内容 */或 //

# 内容"""内容"""

一般用于单行、声明、变量,用于解释代码,提高可读性。在代码测试时,可以使用注释阻止代码的执行。

块注释

/* * 内容 */或/* * * 内容 */

###或"""内容"""

一般用于一段代码,用于解释代码,提高可读性。在代码测试时,可以使用注释阻止代码的执行。

文档注释

/* * * 内容 */

""" 内容内容"""

一般用于代码块或者文档头部,用于解释代码,提高可读性

总结

好了,简单的知识就到这里。学习Python前主要是了解下在在使用Python与其他语言的区别以及如何使用注释信息。

我正在参与2024腾讯技术创作特训营第五期有奖征文,快来和我瓜分大奖!

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1 Python语法
    • 1.1 关于缩进
      • 1.2 变量
        • 1.2 关于空行
          • 1.3 关于命名
          • 2 Python注释
          • 总结
          相关产品与服务
          容器服务
          腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务,覆盖 Serverless、边缘计算、分布式云等多种业务部署场景,业内首创单个集群兼容多种计算节点的容器资源管理模式。同时产品作为云原生 Finops 领先布道者,主导开源项目Crane,全面助力客户实现资源优化、成本控制。
          领券
          问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档