- Python 教程
- Python 教程
- Python - 概述
- Python - 历史
- Python - 特性
- Python 与 C++
- Python - Hello World 程序
- Python - 应用领域
- Python 解释器及其模式
- Python - 环境设置
- Python - 虚拟环境
- Python - 基本语法
- Python - 变量
- Python - 数据类型
- Python - 类型转换
- Python - Unicode 系统
- Python - 文字
- Python - 运算符
- Python - 算术运算符
- Python - 比较运算符
- Python - 赋值运算符
- Python - 逻辑运算符
- Python - 按位运算符
- Python - 成员资格运算符
- Python - 身份运算符
- Python - 运算符优先级
- Python - 注释
- Python - 用户输入
- Python - 数字
- Python - 布尔值
- Python 控制语句
- Python - 控制流
- Python - 决策
- Python - if 语句
- Python - if-else 语句
- Python - 嵌套 if 语句
- Python - Match-Case 语句
- Python - 循环
- Python - For 循环
- Python for-else 循环
- Python - While 循环
- Python - break 语句
- Python - Continue 语句
- Python - pass 语句
- Python - 嵌套循环
- Python 函数和模块
- Python - 函数
- Python - 默认参数
- Python - 关键字参数
- Python - 仅关键字参数
- Python - 位置参数
- Python - 仅位置参数
- Python - 任意或可变长度参数
- Python - 变量范围
- Python - 函数注释
- Python - 模块
- Python - 内置函数
- Python 字符串
- Python - 字符串
- Python - 切片字符串
- Python - 修改字符串
- Python - 字符串连接
- Python - 字符串格式化
- Python - 转义字符
- Python - 字符串方法
- Python - 字符串练习
- Python 列表
- Python - 列表
- Python - 访问列表项
- Python - 更改列表项
- Python - 添加列表项
- Python - 删除列表项
- Python - 循环列表
- Python - 列表推导式
- Python - 排序列表
- Python - 复制列表
- Python - 联接列表
- Python - 列表方法
- Python - 列表练习
- Python 元组
- Python - 元组(Tuple )
- Python - 访问元组项
- Python - 更新元组
- Python - 解压缩元组项
- Python - 循环元组
- Python - 联接元组
- Python - 元组方法
- Python - 元组练习
- Python 集
- Python - 集(sets)
- Python - 访问 Set Items
- Python - 添加 Set Items
- Python - 删除 Set Items
- Python - 循环 Set Items
- Python - 联接 Sets
- Python - 复制 Set
- Python - Set 运算符
- Python - Set 方法
- Python - Set 的练习
- Python 字典
- Python - 字典
- Python - 访问字典项
- Python - 更改字典项
- Python - 添加字典项
- Python - 删除字典项
- Python - 字典视图对象
- Python - 循环字典
- Python - 复制字典
- Python - 嵌套字典
- Python - 字典方法
- Python - 字典练习
- Python 数组
- Python - 数组
- Python - 访问数组项
- Python - 添加数组项
- Python - 删除数组项
- Python - 循环数组
- Python - 复制数组
- Python - 反向数组
- Python - 对数组进行排序
- Python - 连接数组
- Python - 数组方法
- Python - 数组练习
- Python 文件处理
- Python - 文件处理
- Python - 写入文件
- Python - 读取文件
- Python - 重命名和删除文件
- Python - 目录
- Python - 文件方法
- Python OS 文件/目录方法
- Python - os.path 方法
- 面向对象编程
- Python - OOP 概念
- Python - 类和对象
- Python - 类属性
- Python - 类方法
- Python - 静态方法
- Python - 构造函数
- Python - 访问修饰符
- Python - 继承
- Python - 多态性
- Python - 方法覆盖
- Python - 方法重载
- Python - 动态绑定
- Python - 动态类型
- Python - 抽象
- Python - 封装
- Python - 接口
- Python - 软件包
- Python - 内部类
- Python - 匿名类和对象
- Python - 单例类
- Python - 包装类
- Python - 枚举
- Python - 反射
- Python 错误和异常
- Python - 语法错误
- Python - 异常处理
- Python - try-except 块
- Python - try-finally 块
- Python - 引发异常
- Python - 异常链接
- Python - 嵌套 try 块
- Python - 用户定义的异常
- Python - 日志记录
- Python - 断言
- Python - 内置异常
- Python 多线程
- Python - 多线程
- Python - 线程生命周期
- Python - 创建线程
- Python - 启动线程
- Python - 联接线程
- Python - 命名线程
- Python - 线程调度
- Python - 线程池
- Python - 主线程
- Python - 线程优先级
- Python - 守护程序线程
- Python - 同步线程
- Python 同步
- Python - 线程间通信
- Python - 线程死锁
- Python - 中断线程
- Python 网络
- Python - 网络编程
- Python - 套接字编程
- Python - URL 处理
- Python - 泛型
- Python 杂项
- Python - 日期和时间
- Python - math 模块
- Python - 迭代器
- Python - 生成器
- Python - 闭包(closures)
- Python - 装饰器( Decorators)
- Python - 递归
- Python - 正则表达式
- Python - PIP
- Python - 数据库访问
- Python - 弱引用
- Python - 序列化
- Python - 模板
- Python - 输出格式
- Python - 性能测量
- Python - 数据压缩
- Python - CGI 编程
- Python - XML 处理
- Python - GUI 编程
- Python - 命令行参数
- Python - 文档字符串
- Python - JSON
- Python - 发送电子邮件
- Python - 更多扩展
- Python - 工具/实用程序
- Python - 图形用户界面
- Python 高级概念
- Python - 抽象基类
- Python - 自定义异常
- Python - 高阶函数
- Python - 对象内部
- Python - 内存管理
- Python - 元类
- Python - 使用 Metaclasses 进行元编程
- Python - 模拟和存根
- Python - 猴子修补
- Python - 信号处理
- Python - 类型提示
- Python - 自动化教程
- Python - 人性化软件包
- Python - 上下文管理器
- Python - 协程
- Python - 描述符
- Python - 诊断和修复内存泄漏
- Python - 不可变数据结构
Python - 基本语法
Python - 语法
Python 语法定义了一组用于创建 Python 程序的规则。Python 编程语言语法与 Perl、C 和 Java 编程语言有许多相似之处。但是,这些语言之间存在一些明显的差异。
第一个 Python 程序
让我们执行一个 Python 程序,以两种不同的 Python 编程模式打印“Hello, World!”。(a) 交互模式编程 (b) 脚本模式编程。
Python - 交互模式编程
我们可以通过在命令提示符下键入 python 从命令行调用 Python 解释器,如下所示 -
$ python3
Python 3.10.6 (main, Mar 10 2023, 10:55:28) [GCC 11.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
在这里>>>表示一个 Python 命令提示符,您可以在其中键入命令。让我们在 Python 提示符下输入以下文本,然后按 Enter -
>>> print ("Hello, World!")
如果您运行的是旧版本的 Python,例如 Python 2.4.x,那么您需要使用不带括号的 print 语句,例如在 print “Hello, World!”。但是,在 Python 版本 3.x 中,这将产生以下结果 -
Python - 脚本模式编程
我们可以使用脚本参数调用 Python 解释器,该参数开始执行脚本并一直持续到脚本完成。脚本完成后,解释器将不再处于活动状态。
让我们在脚本中编写一个简单的 Python 程序,该脚本是简单的文本文件。Python 文件的扩展名为 .py。在 test.py 文件中键入以下源代码:
print ("Hello, World!")
我们假设您在 PATH 变量中设置了 Python 解释器路径。现在,让我们尝试按如下方式运行此程序 -
$ python3 test.py
这将产生以下结果:
让我们尝试另一种方法来执行 Python 脚本。这是修改后的 test.py 文件 -
#!/usr/bin/python3
print ("Hello, World!")
我们假设您在 /usr/bin 目录中有可用的 Python 解释器。现在,尝试按如下方式运行此程序 -
$ chmod +x test.py # This is to make file executable
$./test.py
这将产生以下结果 -
Python 标识符
Python 标识符是用于标识变量、函数、类、模块或其他对象的名称。标识符以字母 A 到 Z 或 a 到 z 或下划线 (_) 开头,后跟零个或多个字母、下划线和数字(0 到 9)。
Python 不允许在标识符中使用 @、$ 和 % 等标点符号。
以下是 Python 标识符的命名约定 -
- Python 类名以大写字母开头。所有其他标识符都以小写字母开头。
- 以单个前导下划线开始标识符表示该标识符是私有标识符。
- 以两个前导下划线开始标识符表示高度私有的标识符。
- 如果标识符还以两个尾随下划线结尾,则标识符是语言定义的特殊名称。
Python 保留字
以下列表显示了 Python 关键字。这些是保留字,您不能将它们用作常量、变量或任何其他标识符名称。所有 Python 关键字仅包含小写字母。
and | as | assert |
break | class | continue |
def | del | elif |
else | except | False |
finally | for | from |
global | if | import |
in | is | lambda |
None | nonlocal | not |
or | pass | raise |
return | True | try |
while | with | yield |
Python 行和缩进
Python 编程不提供大括号来指示类和函数定义或流控制的代码块。代码块由行缩进表示,这是严格执行的。
缩进中的空格数是可变的,但块中的所有语句必须缩进相同的量。例如 -
if True:
print ("True")
else:
print ("False")
但是,以下块会生成一个错误 -
if True:
print ("Answer")
print ("True")
else:
print ("Answer")
print ("False")
因此,在 Python 中,所有缩进相同数量的空格的连续行都将形成一个块。以下示例具有各种语句块 -
import sys
try:
# open file stream
file = open(file_name, "w")
except IOError:
print "There was an error writing to", file_name
sys.exit()
print "Enter '", file_finish,
print "' When finished"
while file_text != file_finish:
file_text = raw_input("Enter text: ")
if file_text == file_finish:
# close the file
file.close
break
file.write(file_text)
file.write("\n")
file.close()
file_name = raw_input("Enter filename: ")
if len(file_name) == 0:
print "Next time please enter something"
sys.exit()
try:
file = open(file_name, "r")
except IOError:
print "There was an error reading file"
sys.exit()
file_text = file.read()
file.close()
print file_text
Python 多行语句
Python 中的语句通常以换行符结尾。但是,Python 确实允许使用行继续符 (\) 来表示行应该继续。例如 -
total = item_one + \
item_two + \
item_three
包含在 []、{} 或 () 括号内的语句不需要使用行继续符。例如,以下语句在 Python 中效果很好 -
days = ['Monday', 'Tuesday', 'Wednesday',
'Thursday', 'Friday']
Python 中的引号
Python 接受单引号 (')、双引号 (“) 和三引号(''' 或 ”“”)来表示字符串文字,只要相同类型的引号开始和结束字符串。
三引号用于将字符串跨越多行。例如,以下所有内容都是合法的 -
word = 'word'
print (word)
sentence = "This is a sentence."
print (sentence)
paragraph = """This is a paragraph. It is
made up of multiple lines and sentences."""
print (paragraph)
Python 中的注释
注释是 Python 源代码中程序员可读的解释或注释。添加它们的目的是使源代码更容易被人类理解,并且被 Python 解释器忽略
就像大多数现代语言一样,Python 支持单行(或行尾)和多行(块)注释。Python 注释与 PHP、BASH 和 Perl 编程语言中可用的注释非常相似。
不在字符串文本内的哈希符号 (#) 开始注释。# 之后和物理行末尾的所有字符都是注释的一部分,Python 解释器会忽略它们。
# First comment
print ("Hello, World!") # Second comment
这将产生以下结果 -
您可以在语句或表达式之后的同一行上键入注释 -
name = "Madisetti" # This is again comment
您可以按如下方式注释多行:
# This is a comment.
# This is a comment, too.
# This is a comment, too.
# I said that already.
以下三引号字符串也被 Python 解释器忽略,可以用作多行注释:
'''
This is a multiline
comment.
'''
在 Python 程序中使用空行
仅包含空格的行,可能带有注释,被称为空行,Python 完全忽略它。
在交互式解释器会话中,您必须输入空的物理行才能终止多行语句。
等待用户
程序的以下行显示提示,即“按回车键退出”的声明,并等待用户采取行动 -
#!/usr/bin/python
raw_input("\n\nPress the enter key to exit.")
在这里,“\n\n”用于在显示实际行之前创建两个新行。一旦用户按下该键,程序就会结束。这是一个很好的技巧,可以在用户完成应用程序之前保持控制台窗口打开。
单行上有多个语句
分号 ( ; ) 允许在一行上有多个语句,前提是这两个语句都不会启动新的代码块。这是一个使用分号的样本片段 -
import sys; x = 'foo'; sys.stdout.write(x + '\n')
作为套件的多个语句组
在 Python 中,构成单个代码块的一组单独语句称为套件。复合或复杂语句(如 if、while、def 和 class)需要标题行和套件。
标题行以语句(关键字)开始,以冒号 ( : ) 结束,后跟一行或多行,组成套件。例如 -
if expression :
suite
elif expression :
suite
else :
suite
Python 中的命令行参数
可以运行许多程序,以为您提供有关如何运行它们的一些基本信息。Python使您能够使用-h −
$ python3 -h
usage: python3 [option] ... [-c cmd | -m mod | file | -] [arg] ...
Options and arguments (and corresponding environment variables):
-c cmd : program passed in as string (terminates option list)
-d : debug output from parser (also PYTHONDEBUG=x)
-E : ignore environment variables (such as PYTHONPATH)
-h : print this help message and exit
[ etc. ]
您还可以以这样的方式对脚本进行编程,使其应接受各种选项。命令行参数是一个高级主题,一旦你了解了其余的 Python 概念,就应该稍后再学习。