Python简单语句

3.5 Python简单语句

Python语句由关键字标识符表达式组成。语句的根本作用就是执行某些修改操作,让代码发挥作用去做某些事。
语句从执行结构上来分有顺序条件循环结构,这3种结构可以实现任何算法功能。
Python语句根据代码占用的逻辑行数分为只占用1行的简单语句和占用多行的复合语句。

3.5.1 赋值语句

赋值语句用于将名称(重)绑定到特定值,以及修改属性或可变对象的成员项。

x = 23
x, y = 2, 3  # 多个变量的赋值
a = 2, 3
m = n = 11  # 链式赋值

3.5.2 assert 语句

assert语句又称断言语句。是在程序中插入调试性断言的简便方式。
用assert语句可以让程序在指定的时候检测某个结果是否为预期结果,如果不是预期结果则立刻抛出错误并停止程序运行。这有利于我们今早发现程序的异常并对程序排错,提高程序的强壮性。assert语句的语法结构为:
assert 表达式 [,异常消息] # []号代表里面的内容是可选的,下同
assert运行规则为先对表达式进行求值,如果为真,则继续执行程序接下来的其他代码。否则,在没有指定异常消息时默认直接抛出AssertionError错误。有指定时,抛出AssertionError错误的同时提示异常消息内容
>>> assert 1 < 0, '报错啦~'

Traceback (most recent call last):
File "E:\studypy\tmp.py", line 1, in
assert 1 < 0, '报错啦~'
AssertionError: 报错啦~


assert 0 <= mathmark <= 100  # 断言成绩得分必须在0~100之间

3.5.3 pass 语句

pass 是一个空操作,当它被执行时,什么都不发生。它适合当语法上需要一条语句但并不需要执行任何代码时用来临时占位,例如:

if a > 50:
	pass  # 暂时没有想好要做什么,先用pass占位

3.5.4 del 语句

del用于删除一个对象。当对象被删除后如果再次调用则会报错:NameError
例如:
>>> a = 5
>>> del a
>>> a

Traceback (most recent call last):
File "C:\Program Files\Python3102\lib\code.py", line 90, in runcode
exec(code, self.locals)
File <input>, line 1, in
NameError: name 'a' is not defined


3.5.5 return 语句

return语句一般只会用于函数定义中。当使用return语句后会离开当前函数调用,并以return后面跟着的对象作为函数的返回值。
关于return语句将在后续的函数中详细介绍。

3.5.6 yield 语句

yield 语句在语义上等同于 yield 表达式。
yield 表达式和语句仅在定义生成器函数时使用,并且仅被用于生成器函数的函数体内部。在函数定义中使用 yield 就足以使得该定义创建的是生成器函数而非普通函数。
关于yield语句将在后续的生成器中详细介绍。

3.5.7 raise 语句

raise语句用来直接引出一个异常。raise 语句的基本语法格式为:
raise [异常名[(异常原因)]]
其中,用 [] 括起来的为可选参数,其作用是指定抛出的异常名称,以及异常信息的相关描述。如果可选参数全部省略,则 raise 会把当前错误原样抛出;如果仅省略 (异常原因),则在抛出异常时,将不附带任何的异常描述信息。
也就是说,raise 语句有如下三种常用的用法:
1、raise:单独一个 raise。该语句引发当前上下文中捕获的异常(比如在 except 块中),或默认引发 RuntimeError 异常。
>>> raise

Traceback (most recent call last):
File "C:\Program Files\Python3102\lib\code.py", line 90, in runcode
exec(code, self.locals)
File <input>, line 1, in
RuntimeError: No active exception to reraise


2、raise 异常类名称:raise 后带一个异常类名称,表示引发执行类型的异常。如果不存在表达式,raise将直接引发RuntimeError异常。
>>> raise ValueError

Traceback (most recent call last):
File "C:\Program Files\Python3102\lib\code.py", line 90, in runcode
exec(code, self.locals)
File <input>, line 1, in
ValueError


3、raise 异常类名称(描述信息):在引发指定类型的异常的同时,附带异常的描述信息。
>>> raise ValueError('报错啦~')

Traceback (most recent call last):
File "C:\Program Files\Python3102\lib\code.py", line 90, in runcode
exec(code, self.locals)
File <input>, line 1, in
ValueError: 报错啦~


3.5.8 break 语句

break 在语法上只会出现于 for 或 while 循环所嵌套的代码,但不会出现于该循环内部的函数或类定义所嵌套的代码中。
它会终结最近的外层循环,如果循环有可选的 else 子句,也会跳过该子句。
如果一个 for 循环被 break 所终结,该循环的控制目标会保持其当前值。
当 break 将控制流传出一个带有 finally 子句的 try 语句时,该 finally 子句会先被执行然后再真正离开该循环。
关于break语句将在后续的for循环和while循环中详细介绍。

3.5.9 continue 语句

continue 在语法上只会出现于 for 或 while 循环所嵌套的代码中,但不会出现于该循环内部的函数或类定义中。它会继续执行最近的外层循环的下一个轮次。
当 continue 将控制流传出一个带有 finally 子句的 try 语句时,该 finally 子句会先被执行然后再真正开始循环的下一个轮次。
关于continue语句将在后续的for循环和while循环中详细介绍。

3.5.10 import 语句

import语句用来导入模块或者包。之前已经在模块章节详细介绍过了。

3.5.11 global 语句

global 语句是作用于整个当前代码块的声明。它意味着所列出的标识符将被解读为全局变量。要给全局变量赋值需要用到 global 关键字,不过自由变量也可以指向全局变量而不必声明为全局变量。
在 global 语句中列出的名称不得在同一代码块内该 global 语句之前的位置中使用。
在 global 语句中列出的名称不能被定义为形式参数,也不能被作为 with 语句或 except 子句的目标,以及 for 循环的目标列表、class 定义、函数定义、import 语句或变量标注等等。

3.5.12 nonlocal 语句

nonlocal 语句会使得所列出的名称指向之前在最近的包含作用域中绑定的除全局变量以外的变量。这种功能很重要,因为绑定的默认行为是先搜索局部命名空间。这个语句允许被封装的代码重新绑定局部作用域以外且非全局(模块)作用域当中的变量。
与 global 语句中列出的名称不同,nonlocal 语句中列出的名称必须指向之前存在于包含作用域之中的绑定(在这个应当用来创建新绑定的作用域不能被无歧义地确定)。
nonlocal 语句中列出的名称不得与之前存在于局部作用域中的绑定相冲突。
示例:

a = 1


def outer():
    b = 2

    def inner():
        nonlocal b  # 声明外部函数的局部变量
        print(f"inner b:{b}")
        b = 3
        global a  # 声明全局变量
        a = 4

    inner()
    print(f"outer b:{b}")


outer()
print(f"a :{a}")

inner b:2
outer b:3
a :4


练习
1、将教程中所有的简单语句示例全部手敲一遍并熟悉

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python简单语句 - Python技术站

(0)
上一篇 2023年4月2日 下午5:34
下一篇 2023年4月2日 下午5:35

相关文章

  • 字典(dict)

    4.7 字典(dict) 字典是Python中一种非常重要的数据类型。字典和之前的列表、元组不同,里面的元素使用键-值对进行存储。通常字典中元素的键由字符串或数字等可哈希数据类型组成。可以把字典想象成一个集合,只不过每个元素都是由键-值对组成。字典中的元素的键是不能重复的。字典中的元素也是无序的,这点和集合一样。可以通过键获取集合中元素的值,并且速度要远快于…

    Python开发 2023年4月2日
    00
  • 数据类型前置知识

    4.1 数据类型前置知识 4.1.1 数据类型的概念 顾名思义,数据类型就是指数据的类型,计算机不像人,能够很好的分辨数据类型,比如10086,计算机就不知道这个数据到底是字符串还是数值。计算机在用这个数据进行计算时就会出现问题。为了避免这种情况,需要对数据贴一个标签,这个标签就是类型。告诉计算机遇到这种数据应该怎么处理。 4.1.2 哈希 哈希(Hash)…

    Python开发 2023年4月2日
    00
  • 类型转换及相关函数

    4.11 类型转换及相关函数 在Python中,不同的数据类型是可以相互转换的,下面列举一些之前没有介绍但是比较常见的数据类型转换及相关函数,以供参考。 4.11.1 进制转换类 4.11.1.1 bin(x) 描述将整数转变为以“0b”前缀的二进制字符串。示例>>> bin(3)>>> bin(-10) ‘0b11”-…

    Python开发 2023年4月2日
    00
  • JSON

    4.8 JSON 4.8.1 JSON简介 JSON(JavaScript Object Notation, JS对象简谱)是一种轻量级的数据交换格式。它基于 ECMAScript(European Computer Manufacturers Association, 欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数…

    Python开发 2023年4月2日
    00
  • 列表(list)

    4.4 列表(list) 列表是Python中使用最频繁也是最重要最灵活的一种数据结构。Python列表中的元素类型可以不同,可以存放各种各样的数据,比如:数字、字符串、函数、类、字典等,甚至还可以嵌套存放列表。列表也是一种序列,可以通过索引获取列表中的元素。支持序列的各种操作。 4.4.1 列表的创建 4.4.1.1 通过列表标识符号创建 列表在创建的时候…

    Python开发 2023年4月2日
    00
  • 使用pip管理库

    2.5 使用pip管理库 安装Python后会默认安装pip工具,该工具可以用来安装、升级和移除库。默认情况下 pip 将从[Python Package Index]https://pypi.org 处下载安装软件包。pip 有许多子命令: “install”, “uninstall”, “freeze” 等等。下面我们来介绍一些比较重要且实用的pip命令…

    Python开发 2023年4月2日
    00
  • 字符串(str、bytes)

    4.3 字符串(str、bytes) 4.3.1 字符串前置知识 4.3.1.1 字符串的概念 字符串由一系列字符组成,字符(Character)是各种文字和符号的总称,包括各国家文字、标点符号、图形符号、数字等。字符串是编程语言中表示文本的数据类型。字符串就是由一个个元素(字符)组成的。像这种由一个个元素按照顺序组成的数据,在Python语言里面,把这种特…

    Python开发 2023年4月2日
    00
  • Python获取时光网电影数据

    Python获取时光网电影数据 一、前言 有时候觉得电影真是人类有史以来最伟大的发明,我喜欢看电影,看电影可以让我们增长见闻,学习知识。从某种角度上而言,电影凭借自身独有的魅力大大延长了人类的”寿命”。一部电影如同一本故事书,我可以沉迷到其中,来的一个新的世界,跟着电影主角去经历去感悟。而好的电影是需要慢慢品尝的,不仅提供了各种视觉刺激和情感体验,更能带来思…

    2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部