当前位置: 首页 > news >正文

【Python 入门】(1)Python 语言基础(语法特点)

【Python 入门】(1)Python 语言基础(语法特点)


开发语言:Python 3
Python 专栏:入门篇(1)
语言基础:Python 语法特点


Python

学习 Python 需要了解它的语法特点,如注释规则、代码缩进、编码规范等。下面将对这些 Python 语法特点进行详细介绍。

一、注释规则

所谓,就是在代码中添加标注性的文字,进而帮助程序员更好地阅读代码。注释的内容会被 Python 解释器忽略,并不会在执行结果中体现出来。

在 Python 中,通常包括 3 种类型的注释,分别是单行注释,多行注释和文件编码声明注释。

1、单行注释

在 Python 中,使用 # 作为单号注释的符号。从 # 符号开始直到换行,其后面的所有内容都作为注释的内容而被 Python 解释器忽略。

语法格式:

# 注释内容

单行注释可以放在要注释的代码的前一行,也可以放在要注释的代码的右侧,如若放在右侧,代码与注释之间通常会间隔一定距离。(# 符号与注释内容之间通常会用一个空格间隔)

# 输出 Hello World!
print("Hello World!")
print("Hello World!")		# 输出 Hello World!

IDLE 快速注释:

在 IDLE 编辑器窗口,可以快速注释与取消注释选中代码。

注释:选中要注释的代码(会注释所有选中的行,光标放置于一行亦可),点击主菜单中 Format→\toComment Out Region 菜单项,或使用快捷键 Alt+3

取消注释:选中要取消注释的代码(会取消注释所有选中的行,光标放置于一行亦可),点击主菜单中 Format→\toUnComment Region 菜单项,或使用快捷键 Alt+4

2、多行注释

在 Python 中并没有单独用于多行注释的标记,而是将多行注释包含在一对三引号中("""..."""'''...''')中,这本质上应该属于一个字符串,而如果它不属于任何语句中,Python 解释器就认为它为注释,将其忽略。

语法格式:

"""注释内容1注释内容2注释内容3...
"""

或者

'''注释内容1注释内容2注释内容3...
'''

注意:在使用三引号作为注释时,三引号必须成对存在,否则在程序运行时会出现 EOF while scanning triple-quoted string literal 错误。

3、文件编码声明注释

在 Python 3 中,默认采用的文件编码为 UTF-8,这种编码支持世界上绝大多数语言的字符,也包括中文,如果不想使用这种编码,就需要在文件的第一行声明文件的编码,也就是需要使用文件编码声明注释。

语法格式:

# -*- coding:[编码] -*-

或者:

# coding=[编码]

事实上,-*- 没有实际作用,只是为了美观而加上的,这也成为了大众的习惯,那么当然去掉 -*-,写成 # coding:[编码] 是完全没有问题的。

编码即文件所使用的字符编码类型,如果采用 GBK 编码,则应设置为 gbkcp936

#  -*- coding:gbk -*-#  -*- coding:cp936 -*-# coding=gbk# coding=cp936

二、代码缩进

Python 不像一些程序设计语言(如 Java、C 语言、C++)那样采用大括号分隔代码块,而是采用冒号 : 和代码缩进来分隔代码块,区分代码层次,所以 Python 代码是严格缩进,否则会出现错误。

在 Python 中,对于类定义、函数定义、流程控制语句(条件判断语句,循环结构语句)、异常处理、文件操作等,行尾的冒号和下一行的缩进表示一个代码块的开始,而缩进结束,表示一个代码块的结束。

代码展示:

class Bird:number = 10def __init__(self):print(f"Number is {Bird.number}")def power(int a,int b):return pow(a,b)if number >= 10:print("Yes")for i in range(10):print(i,end=" ")try:power(10,20)
except Exception as e:print(f"Error : {e}")with open("message.txt","r") as file:string = file.read(10)print(f"Message : {string}")

Python 缩进可以进行嵌套,不同级别的代码块使用不同缩进以区分,而同一级别的代码块的缩进量必须相同,否则会出现 SyntaxError 异常。

代码缩进缩进量通常为 4 个空格或者一个 Tab 键作为一个缩进量,在代码编写工具中,如果行尾由冒号,编辑器会在换行时自动实现缩进。

IDLE 缩进设置:

在 IDLE 中,通常以 4 个空格作为一个缩进量,当然也可以进行修改:

在编辑器窗口的主菜单中打开 Options→\toConfigure IDLE 菜单项,找到修改缩进量的地方修改即可(不同 Python 版本会有所差异)

在较新版本中,需再次点击 Windows 菜单项后寻找并修改,而旧版本不需要,在界面下方找即可。

旧版如图所示:

在这里插入图片描述

三、编码规范

遵循一定的代码编写规则和命名规范可以使代码更加规范化,对代码的理解与维护起到至关重要的作用。

1、编写规则

Python 中采用 PEP 8 作为编码规范,其中 PEP 是 Python enhancement proposal 的缩写,中文名为 Python 增强建议书,而 PEP 8 表示版本,它是 Python 代码的样式指南。下面给出一些 PEP 8 编码规范中一些应严格遵守的条目。

  1. 导入模块时使用 import 语句,每条 import 语句应只导入一个模块,尽量避免一次导入多个模块。

    # 规范写法
    import os
    import sys#不规范写法
    import os, sys
    
  2. 不应在行尾添加分号 ;,也不应将两条语句放在同一行。

  3. 为了增强代码可读性,建议每行不超过 80 个字符。如果应当放一行的内容超过了 80 的字符,也可以将内容拆分成多行,如果语句中本身含有小括号,且是从小括号中间分开,则直接换行分开即可(编辑器还会自动对齐),否则就需要使用反斜杠 \ 来连接多行内容。

    print("12345678901234567890...123456789012345678901234567890...1234567890")label = tk.Label(root, test="Python", fg="black", relief="flat",font=("宋体", 15, "normal"), bg="white")
    
    number = people \+ animalsfrom tkinter import TOP, BOTTOM, LEFT, RIGHT, X, Y, BOTH, NONE, \N, S, E, W, NE, NW, SE, SW, CENTER 
    
  4. 使用必要的空行可以增加代码的可读性,一般在顶级定义(如函数或者类的定义)之间空两行,而方法定义之间空一行,用于分隔某些功能的位置处也可以空一行。

  5. 通常情况,在运算符两侧、函数参数之间、逗号两侧(或一侧,通常右侧)建议使用空格进行分割。

  6. 应该避免在循环中使用 ++= 操作符累加字符串。因为字符串是不可变的,这样会创建不必要的临时对象,推荐将每个子字符串添加到列表中,然后使用 join() 方法拼接起来。

  7. 适当的使用异常处理结构可以提高程序的容错性,但不能过度依赖于异常处理结构,适当的显示判断是必要的。

PEP 8 官方参考文档:PEP 8

2、命名规则

Python 程序设计中命名也有一些强制性命名规则‌,如果不遵循这些规则,就不是合法有效的标识符,在程序运行时就会显示错误。

  1. 字符组成‌:标识符只能包含字母(a-z, A-Z)、数字(0-9)和下划线(_),不能使用特殊字符(如 @, # 等)。‌‌
  2. 开头限制‌:必须以字母或下划线开头,不能以数字开头。‌‌
  3. 大小写敏感‌:大小写字母被视为不同的字符,如 nameNameNAME 被视为不同的标识符。‌‌
  4. 避免关键字‌:不能使用 Python 保留关键字(如 if, for, class, def 等)。

3、命名规范

命名规范在编写代码中起到很重要的作用,虽然不遵循命名规范,程序也可以运行,但是使用命名规范可以更加直观的了解代码所代表的含义,下面介绍Python中常用的一些命名规范。

  1. 模块名尽量短小,并且全部使用小写字母,可以使用下画线分隔多个字母。(例如,game_mainuser_registerbmiexponent 都是推荐使用的)

  2. 包名尽量短小,并且全部使用小写字母,不推荐使用下画线。(例如,com.zhongzhengcom.zhoengcom.cn.zhoeng 都是推荐使用的,而 com_zhongzheng 则是不推荐使用的)

  3. 类名采用单词首字母大写形式(即 Pascal 风格),也叫驼峰式命名法。(例如,BorrowBookSaleLightBigAnimal

    Pascal 是以纪念法国数学家 Blaise Pascal 而命名的一种编程语言,Python 中的 Pascal 命名法就是根据该语言的特点总结出来的一种命名方法。

  4. 模块内部的类名采用下画线(_)+ Pascal 风格的类名组成。(例如,在 BorrowBook 类中的内部类,可以使用 _BorrowBook 进行命名)

  5. 函数、类的属性和方法的命名规则同模块类似,也是全部采用小写字母,多个字母间用下画线(_)进行分隔。

  6. 常量全部采用大写字母命名,多个单词间可以使用下画线(_)进行分隔。

  7. 使用双下画线(__)开头的实例变量或方法是类私有的。

参考文献:

[1] Python 从入门到精通(软件开发视频大讲堂)(第 3 版)明日科技编著 / 清华大学出版社

博客日志:

  • 开始于 2025.8.27
  • 完成于 2025.8.28
http://www.dtcms.com/a/355414.html

相关文章:

  • OSI模型和TCP/IP模型区别是什么
  • JAVA全栈Redis篇————Redis常用数据类型概述
  • 如何快速copy复制一个网站,或是将网站本地静态化访问
  • 电力电子中的变压器原理、作用、选型与测量指南-超简单解读
  • 雷达传感器和红外传感器的区别
  • MCP tutorials
  • HOOPS Communicator 2025.6.0更新发布:WebViewer UI全面进化,BIM支持再升级
  • C++(Qt)软件调试---vspkg安装crashpad(34)
  • 浅谈 Java 中的 import static 使用方式
  • Docker 是什么?
  • RabbitMQ-高级特性
  • 机器视觉学习-day09-图像矫正
  • 客户预充值系统(一) - 数据库设计与数据插入
  • JVM——八股文
  • curl、python-requests、postman和jmeter的对应关系
  • DJI无人机云哨DroneID技术解析:天空中的数字身份证
  • 2025年KBS SCI1区TOP,矩阵差分进化算法+移动网络视觉覆盖无人机轨迹优化,深度解析+性能实测
  • Maven核心用法
  • ubuntu挂载外接硬盘
  • IDEA 中创建 Springboot 项目没有 Java8 选项的解决办法
  • 介绍智慧城管十大核心功能之一:风险预警系统
  • 关于npm安装electron和better-sqlite3失败问题
  • Copilot、Cursor、Trae、ChatGPT 的“四件套”场景选择表
  • 第六届智能计算与人机交互国际研讨会(ICHCI 2025)
  • MySQL 与 ClickHouse 深度对比:架构、性能与场景选择指南
  • 【数字IC后端】引导时钟树CTS的生成方向之anchor driver
  • 详细介绍Linux 内存管理struct page数据结构中的_count和_mapcount有什么区别?
  • Pyomo、PuLP 和 OR-Tools 解决约束优化问题效率对比
  • C# SIMD编程实践:工业数据处理性能优化案例
  • 基于SpringBoot的校园资料分享系统【2026最新】