第 2 章 Python 语言基本语法元素

整理的文章内容主要来源为高教版《计算机等级考试二级 Python》教程视频讲义,并且更正了原讲义中的错误的地方。
专栏文章索引如下:
考试大纲
第 1 章 程序设计基本方法
第 2 章 Python 语言基本语法元素
第 3 章 基本数据类型
第 4 章 程序的控制结构
第 5 章 函数和代码复用
第 6 章 组合数据类型
第 7 章 文件和数据格式化
第 8 章 Python 计算生态
第 9 章 Python 标准库概览
第 10 章 Python 第三方库使用
第 11 章 Python 第三方库纵览

1. 程序的格式框架

程序的格式框架,即段落格式,是 Python 语法的一部分,可以提高代码的可读性和可维护性。

1.1 缩进

Python 语言采用严格的“缩进”来表示程序逻辑,即我们所说的 Python 程序间的包含与层次关系。一般代码不要求缩进,顶行编写且不留空白。在 if、while、for、def、class 等保留字所在完整语句后通过英文的 “:” 结尾并在之后进行缩进,表明后续代码与紧邻无缩进语句的所属关系。
缩进可以用 Tab 键实现,也可以用多个空格实现(一般是 4 个空格),但两者不能混用,建议采用 4 个空格方式书写代码。

for i in range(1,10):
	print(i)

当程序执行时,产生了 “unexpected indent” 错误,说明代码中出现了缩进不匹配的问题。
例如,下面的代码出现缩进不匹配异常:
在这里插入图片描述

1.2 注释

注释是代码中的辅助性文字,会被编译器或解释器略去,不被计算机执行,一般用于程序员对代码的说明。Python 语言中使用 “#” 表示一行注释的开始。注释可以在一行中任意位置通过 “#” 开始,其后面的本行内容被当作注释,而之前的内容依然是 Python 执行程序的一部分。
注释的作用:

  • 注释一般用于在代码中标明作者和版权信息
  • 解释代码原理和用途
  • 通过注释单行代码辅助程序调试
# 作者:华仔仔
# 创建时间:2022/01/20
print("hello world")   # print() 函数用于打印输出

1.3 续行符

Python 程序是逐行编写的,每行代码长度并无限制,但从程序员角度出发,单行代码太长并不利于阅读。这时就可以用续行符将单行代码分割为多行表达。
Python 中的续行符为 “\”。续行符之后不允许再存在空格,即续行符后直接换行。
在这里插入图片描述

2. 语法元素的名称

Python 语言的基本单位是“单词”,少部分单词是 Python 语言规定的,被称为保留字。大部分单词是用户自己定义的,通过命名过程形成了变量或函数,用来代表数据或代码,称为标识符。

2.1 变量

变量是保存和表示数据的一种语法元素,变量的值是可以改变的,通过赋值运算符 “=”方式被修改。Python 语言中,变量可以随时命名、随时赋值、随时使用。

a = 99
a = a + 1
print(a)

2.2 保留字

保留字也称 keyword 关键字,被编程语言内部定义并保留使用的,每种程序设计语言都有自己的保留字,保留字一般用于构成程序的整体框架,Python3.x 中一共有 35 个保留字。
下面为 35 个保留字的含义及作用:

序号保留字说明
1and逻辑与操作,用于表达式运算
2as用于转换数据类型
3assert用于判断变量或条件表达式的结果
4async用于启用异步操作
5await用于异步操作中等待协程返回
6break中断循环语句的执行
7class定义类
8continue继续执行下一次循环
9def定义函数或方法
10del删除变量或序列的值
11elif条件语句,与 if、else 结合使用
12else条件语句,与 if、else 结合使用;也可用于异常或循环语句
13except包含捕获异常后的处理代码块,与 try、finally 结合使用
14False含义为“假”的逻辑值
15finally包含捕获异常后的始终要调用的代码块,与 try、except 结合使用
16for循环语句
17from用于导入模块,与 import 结合使用
18global用于在函数或其他局部作用域中使用全局变量
19if条件语句,与 elif、else 结合使用
20import导入模块,与 from 结合使用
21in判断变量是否在序列中
22is判断变量是否为某个类的实例
23lambda定义匿名函数
24None表示一个空对象或是一个特殊的空值
25nonlocal用于在函数或其他作用域中使用外层(非全局)变量
26not逻辑非操作,用于表达式运算
27or逻辑或操作,用于表达式运算
28pass空的类、方法或函数的占位符
29raise用于抛出异常
30return从函数返回计算结果
31True含义为“真”的逻辑值
32try测试执行可能出现异常的代码,与 except, finally 结合使用
33while循环语句
34with简化 Python 的语句
35yield从函数依次返回值
Python二级考试涉及到的保留字一共有22个。选学 5 个:None、finally、lambda、pass、with.
Python 中的保留字也是大小写敏感的。举例:True 为保留字,而 true 不是保留字。

2.3 标识符

标识符可以简单的理解为一个名字,主要用来标识变量、函数、类和其他对象的名称。
标识符的命名规则:

  • 由字母、数字、下划线组成
  • 第一个字符不能是数字
  • 不能是Python保留字
  • 只允许使用 ISO-Latin(ISO-8859-1) 字符中的 A-Z 和 a-z
  • 允许使用中文,但不建议

注意:标识符对大小写敏感,name 和 Name 是两个不同的名字。

3. 数据类型

计算机对数据进行运算时需要明确数据的类型和含义。比如说 1001001 到底表示的是十进制的数字,还是二进制的数字,还是表示一个数字串?数据类型就是用来表达数据的含义,消除计算机对数据理解的二义性。

3.1 数值类型

表示数字或数值的数据类型为数值类型,Python 提供的 3 种数值类型:
整数类型:与数学中的整数一致,包含正、负、0。一个整数有二进制、八进制、十进制、十六进制 4 种表示方法。
浮点类型:与数学中的小数一致,没有取值范围限制,可正、可负。有两种表示形式,一种是小数点的形式,另外一种是科学计数法。浮点数只有十进制形式。
复数:与数学中的复数一致,采用 a + bj 的形式表示,存在实部和虚部。

3.2 字符串类型

计算机经常处理文本信息,文本信息在程序中使用字符串类型表示。在Python 中使用单引号或双引号括起来的一个或多个字符来表示。单引号和双引号的作用相同。
字符序列有两种序号体系:
正向递增序号:有效范围为 [0, N-1], 其中 N 为字符串中字符的个数。最左侧的字符序号为 0, 依次向右递增,最右侧的字符序号为 N-1.
反向递减序号:有效范围为 [-N, -1],其中 N 为字符串中字符的个数,最右侧的字符序号为 -1, 依次向左递减,最左侧的字符序号为 -N.
两种索引可以同时使用,以下代码为对单个字符进行的索引。
在这里插入图片描述
字符串 s 的值为 “hello python”, 正向递增序号(从 0 开始计数,最大下标为 N-1):s[0] 的值应该是字符串s的一个字符,s[11] 的值是字符串最后一个字符。反向递减序号(从 -N开始计数,最大的下标为 -1):s[-1] 的值是字符串最后一个字符,s[-2]的值是字符串倒数第二个字符,s[-12] 的值是字符串第一个字符。
还可以采用 [N:M] 格式获取字符串的子串,这种操作被称为切片操作。[N:M] 获取字符串中从 N 到 M(但不包含 M) 的连续的子字符串。N 和 M 都表示的是索引序号,可以混合使用正向递增序号和反向递减序号。
在这里插入图片描述
通过 Python 默认提供的 len() 函数获取字符串的长度,一个中文字符和一个英文字符的长度都记为 1.
在这里插入图片描述

4. 程序的语句元素

4.1 表达式

产生或计算新数据的代码片段称为表达式。类似于数学中的公式,一般由数据和操作符构成。

4.2 赋值语句

对变量进行赋值的一行代码被称为赋值语句,在 Python 中使用一个 “=”表示 “赋值”,即将等号右侧表达式计算后的结果值赋给左侧的变量。
基本赋值语句用法:
变量 = 表达式

a = 10 + 20   # 赋值语句
print(a)

将表达式100 + 200赋值给变量a,那么此时a的值就应该为表达式的结果。

同步赋值语句就是同时给多个变量进行赋值。
同步赋值语句语法:
变量 1, 变量 2, 变量 N = 表达式 1, 表达式 2, …, 表达式 N

a,b,c = 100,200,300

分别给变量 a, b, c 赋值为 100,200,300.

同步赋值语句应用最多的就是互换变量的值,即交换两个变量的值。

a,b = 100,200
a,b = b,a

首先,将100, 200分别赋值给变量 a 和 b. 之后,交换变量 a 和变量 b 的值。最终,变量 a 的值为200, 变量 b 的值为 100.

4.3 引用

Python 程序会经常使用当前程序之外已有的功能代码,这个过程叫引用。Python 语言中使用 import 这个保留字引用当前程序以外的功能库。
引用功能库之后,功能库.函数名() 的方式调用基本功能,这种方式简称为 A.B() 方式。

import time
print(time.time())

通过 import 关键字导入 time 库,然后通过使用 time.time(), 调用 time 库下面的 time() 函数,最后输出当前的时间戳。

4.4 其他语句

除了赋值语句之外,Python 还有分支语句和循环语句。
分支语句:根据判断条件选择程序执行路径。一般包含单分支结构、双分支结构和多分支结构。
单分支语法结构:

if 条件:
	语句块

任何能够产生 True 或 False 的语句都可以作为条件,当条件为 True 时,则执行语句块中的内容。

s = 'python'
if s == 'python':
	print('hello' + s)

首先,将字符串 “python” 赋值给变量 s, 此时变量 s 就是一个字符串变量。然后,进入 if 分支判断,判断s的值是否等于 ‘python’, 如果等于,则条件为 True, 进入分支执行语句,输出 ‘hellopython’。
双分支语法结构:

if 条件:
	语句块1
else:
	语句块2

当条件为 True 时,执行语句块 1. 当条件为 False 时,执行语句块 2. 其中 if…else 都是保留字。

s = 'java'
if s == 'python':
	print('hello' + s)
else:
	print('hi' + s)

将字符串 ‘java’ 赋值给变量 s, 然后进行判断,s 的值是否为 ‘python’, 如果是,条件为 True, 输出 ‘hello java’;否则,条件为 False, 输出 ‘hi java’.

5. 基本输入输出函数

5.1 input() 函数

input() 函数是从控制台获得用户的一行输入,无论用户输入什么内容,input() 函数都以字符串类型返回,input() 函数可以包含一些提示性文字,用来提示用户。
input 语法格式:

变量 = input(提示性文字)

无论用户输入的是数字还是字符,input() 函数统一按照字符串类型输出,为了后续能够操作用户输入的信息,需要将输入指定一个变量进行存储。
input() 函数的提示性文字不是必须的,可写可不写。

a = input('请输入一个数字')
type(a)

通过调用 input() 函数,使用户接收一个输入值,然后将输入值用变量 a 进行接收存储。“请输入一个数字:”其实是 input() 函数的提示语句,这个是自己定义的。虽然用户输入的是一个数字,但是一律按照字符串进行处理,也就是说如果 a 的值为 “12”,它的类型为字符串类型。

5.2 eval() 函数

eval(s) 函数将去掉字符串 s 最外侧的引号,并按照 Python 语句方式执行去掉引号后的字符内容。
eval 语法格式:

变量 = eval(字符串)

变量用来保存对字符串内存进行 Python 运算的结果。
在这里插入图片描述
eval() 函数去掉了字符串 ‘1.2+3.4’ 最外侧的引号,对其内容当作 Python 语句进行运算,运算的结果为 4.6, 保存到变量 a 中,所以a的类型是 float 类型。
eval() 函数经常和 input() 函数一起使用,用来获取用户输入的数字。
eval() 与 input() 函数一起使用的语法:

变量 = eval(input(提示性文字))

用户输入的数字、包括小数和负数, input() 解析为字符串,再由 eval() 去掉字符串引号,将被直接解析为数字保存到变量中。
在这里插入图片描述
首先,调用 input() 函数,让用户输入一个“小数”,其实是一个字符串。然后,调用 eval() 函数,去掉“1.22” 两侧的引号,让它成为真正的小数。

5.3 print() 函数

print() 函数用于输出运算结果。
print() 函数的三种用法:

  • 仅用于输出字符串或单个变量
 print(待输出字符串或变量)

对于字符串,print() 函数输出后将去掉两侧引号,对于其他类型,则会直接输出。

  • 用于输出一个或多个变量,输出后各变量之间用一个空格分隔。
print(变量1,变量2,,变量N)

在这里插入图片描述

  • 用于混合输出字符串与变量的值,其中输出字符串模板中使用 {} 表示一个槽位,每个槽位对应 format{} 中的一个变量。
print(输出字符串模板.format(变量 1, 变量 2,.,变量 N))

在这里插入图片描述
‘整数 {} 和整数 {} 的和是 {}’ 是输出字符串模板,也就是混合字符串输出的样式,大括号 {} 表示一个槽位,括号中的内容由后面紧跟着的 format() 方法中的参数按顺序填充。

print() 函数输出文本时默认会在最后增加一个换行,如果不希望在最后增加这个换行,或者希望输出文本后增加其他内容,可以对 print() 函数的end 参数进行赋值。
语法格式为:

print(待输出的内容,end = ‘增加的输出结尾’)

在这里插入图片描述

6. 选择题

(1)以下哪个选项不是 Python 语言的保留字(C)

  • A. False
  • B. and
  • C. true
  • D. if

(2)s = ’0123456789’, 以下哪个选项表示 ’0123’(B)

  • A. s[1:5]
  • B. s[0:4]
  • C. s[0:3]
  • D. s[-10:-5]

(3)x=2, y=3, 执行 x, y=y, x 之后,x 和 y 的值分别是什么(B)

  • A. 2,3
  • B. 3,2
  • C. 2,2
  • D. 3,3

(4)以下不是 Python 的注释方式的是(C)

  • A. #注释一行
  • B. #注释第一行
  • C. //注释第一行
  • D. “““ Python 文档注释”””

(5)以下变量名不合法的是(A)

  • A. for
  • B. _my
  • C. a_int
  • D. c666

(6)len(“hello world”) 的输出结果为(B)

  • A. 10
  • B. 11
  • C. 12
  • D. 13

(7)以下赋值语句中合法的是(B)

  • A. x=2, y=3
  • B. x=y=3
  • C. x=2 y=3
  • D. x=(y=3)

(8)“世界很大”+“人很渺小”的输出结果是(A)

  • A. 世界很大人很渺小
  • B. “世界很大”“人很渺小”
  • C. “世界很大”+“人很渺小”
  • D. 世界很大+人很渺小

(9)与 0xf2 值相等的是(B)

  • A. 342
  • B. 242
  • C. 0b11010010
  • D. o362

PDF 讲义下载链接如下:
链接:https://pan.baidu.com/s/1rc8d2_mmtci0o5vtCSl6rg

  • 10
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 6
    评论
Python是一种高级编程语言,具有简单易学、代码可读性强、功能强大等特点,被广泛应用于Web开发、数据分析、人工智能等领域。以下是Python必备知识的概述: 1.基础语法:Python的基础语法包括变量、数据类型、运算、条件语句、循环语句、函数等。掌握这些基础语法是学习Python的第一步。 2.面向对象编程:Python是一种面向对象的编程语言,掌握面向对象编程的概念和技巧对于编写高质量的Python代码非常重要。 3.模块和包:Python的模块和包是组织代码的重要方式,掌握如何编写和使用模块和包可以提高代码的可维护性和复用性。 4.异常处理:Python的异常处理机制可以帮助我们更好地处理程序中的错误和异常情况,提高程序的健壮性。 5.文件操作:Python提供了丰富的文件操作函数和模块,可以方便地读写文件和处理文件系统。 6.正则表达式:正则表达式是一种强大的文本处理工具,Python内置了re模块,可以方便地进行正则表达式匹配和替换。 7.网络编程:Python的socket模块提供了网络编程的基础功能,可以编写各种网络应用程序。 8.数据库编程:Python支持多种数据库,包括MySQL、SQLite、Oracle等,可以使用Python编写数据库应用程序。 9.常用库和框架:Python拥有丰富的第三方库和框架,包括NumPy、Pandas、Matplotlib、Django等,可以大大提高开发效率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ReadThroughLife

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值