返回顶部
首页 > 资讯 > 后端开发 > Python >Python 语句的表达式和缩进
  • 602
分享到

Python 语句的表达式和缩进

2024-04-02 19:04:59 602人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录一、python 中的语句1.1什么是声明?1.2什么是表达式1.3简单的赋值语句1.4增强赋值语句二、Python 中的多行语句2.1显式续行2.2隐式续行三、Python 缩

一、Python 中的语句

1.1什么是声明?

Python 中的语句是 Python 解释器可以读取和执行的逻辑指令。在 Python 中,它可以是表达式或赋值语句。

赋值语句是 Python 的基础。它定义了表达式创建和保存对象的方式。

1.2什么是表达式

表达式是一种类型的 Python 语句,它包含数字、字符串、对象和运算符的逻辑序列。值本身是一个有效的表达式,变量也是如此。

使用表达式,我们可以执行加法、减法、连接等操作。它还可以调用评估结果的函数。

例子:


# 使用算术表达式
>>> ((10 + 2) * 100 / 5 - 200)
40.0

# 在表达式中使用函数
>>> pow(2, 10)
1024

# 在表达式中使用 eval
>>> eval( "2.5+2.5" )
5.0

1.3简单的赋值语句

在一个简单的赋值中,我们创建新变量、赋值和更改值。该语句提供了一个表达式和一个变量名作为标签来保存表达式的值。


# Syntax
variable = expression
# LHS <=> RHS

现在让我们仔细看看 Python 中的三种赋值语句,看看到底发生了什么。

案例 1:右侧 (RHS) 只是一个基于值的表达式。

让我们考虑一下 Python 中最基本的赋值形式。


>>> test = "Learn Python"

Python 将在内存中创建一个字符串“Learn Python”,并为其分配名称“test”。您可以使用称为id()的内置函数来确认内存地址。


>>> test = "Learn Python"
>>> id(test)
6589040

该数字是数据在内存中所在位置的地址。现在,这里有一些你应该知道的有趣点。

  • 如果您创建另一个具有相同值的字符串,Python 将创建一个新对象并将其分配到内存中的不同位置。所以这条规则适用于大多数情况。

>>> test1 = "Learn Python"
>>> id(test1)
6589104
>>> test2 = "Learn Python"
>>> id(test2)
6589488

  • 但是,Python 在以下两种场景中也会分配相同的内存地址。

字符串没有空格并且包含少于 20 个字符。
如果整数范围在 -5 到 +255 之间。
这个概念被称为InterningPython 这样做是为了节省内存。

案例 2:右侧 (RHS) 是当前的 Python 变量。

让我们讨论下一种类型的赋值语句,其中 RHS 是当前 Python 变量。


>>> another_test = test

上面的语句不会在内存中触发任何新的分配。这两个变量都指向相同的内存地址。这就像为现有对象创建别名。让我们使用id()函数来验证这一点。


>>> test = "Learn Python"
>>> id(test)
6589424
>>> another_test = test
>>> id(another_test)
6589424

案例 3:右侧 (RHS) 是一个操作。

在这种类型的语句中,结果将取决于操作的结果。让我们用下面的例子来分析它。


>>> test = 2 * 5 / 10
>>> print(test)
1.0
>>> type(test)
<class 'float'>

在上面的例子中,赋值会导致创建一个“float”变量。


>>> test = 2 * 5
>>> print(test)
10
>>> type(test)
<class 'int'>

在这个例子中,赋值将导致创建一个 “int”变量。

1.4增强赋值语句

我们可以在赋值中组合算术运算符以形成扩充赋值语句。

查看以下示例以了解增强赋值语句。


x += y

上面的语句是下面简单语句的简写。


x = x + y

下一个是一个更清晰的例子,我们向元组添加新元素。


>>> my_tuple = (10, 20, 30)
>>> my_tuple += (40, 50,)
>>> print(my_tuple)
(10, 20, 30, 40, 50)

下一个示例是使用元音列表。它正在演示将缺失的元音添加到列表中。


>>> list_vowels = ['a','e','i']
>>> list_vowels += ['o', 'u',]
>>> print(list_vowels)
['a', 'e', 'i', 'o', 'u']

二、Python 中的多行语句

通常,每个 Python 语句都以换行符结尾。但是,我们可以使用行继续符 () 将其扩展到多行。

Python 为我们提供了两种在程序中启用多行语句的方法。

2.1显式续行

当您立即使用行继续符 () 将语句拆分为多行时。

例子:


# 使用多行语句初始化列表
>>> my_list = [1, \
... 2, 3\
... ,4,5 \
... ]
>>> print(my_list)
[1, 2, 3, 4, 5]

# 使用多行语句计算表达式
>>> eval ( \
... " 2.5 \
... + \
... 3.5")
6.0

2.2隐式续行

隐式续行是指使用括号 ( )、方括号 [ ] 和大括号 { } 中的任何一个拆分语句 。您需要使用提到的构造将目标语句括起来。

例子:


>>> result = (10 + 100
... * 5 - 5
... / 100 + 10
... )
>>> print(result)
519.95

另一个例子:


>>> subjects = [
... 'Maths',
... 'English',
... 'Science'
... ]
>>> print(subjects)
['Maths', 'English', 'Science']
>>> type(subjects)
<class 'list'>

三、Python 缩进

许多高级编程语言(如 C、c++C#)都使用大括号 { } 来标记代码块。Python 通过缩进来实现。

表示函数体或循环体的代码块以缩进开始,以第一个未缩进的行结束。

3.1Python中的缩进有多少个空格?

Python 样式指南 (PEP 8) 规定缩进大小应保持为 4。然而,谷歌有其独特的风格指南,限制缩进最多两个空格。所以你也可以选择不同的风格,但我们建议遵循 PEP8。

3.2为什么缩进很重要?

大多数编程语言都提供缩进以实现更好的代码格式,并且不强制使用缩进。

但是,在 Python 中,必须遵守缩进规则。通常,我们将代码块中的每一行缩进四个空格(或相同的数量)。

在前几节的示例中,您可能已经看到我们编写了没有缩进的简单表达式语句。

然而,为了创建复合语句,缩进将是非常必要的。

例子:


def demo_routine(num):
 print('I am a demo function')
 if num % 2 == 0:
 return True
 else:
 return False

num = int(input('Enter a number:'))
if demo_routine(num) is True:
 print(num, 'is an even number')
else:
 print(num, 'is an odd number')

现在,还可以看到不想要的缩进导致错误的场景。因此,让我们尝试缩进一个简单的表达式语句


>>> 6*5-10
 File "<stdin>", line 1
 6*5-10
 ^
IndentationError: unexpected indent

到此这篇关于Python 语句的表达式和缩进的文章就介绍到这了,更多相关Python 表达式和缩进内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python 语句的表达式和缩进

本文链接: https://lsjlt.com/news/136599.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python 语句的表达式和缩进
    目录一、Python 中的语句1.1什么是声明?1.2什么是表达式1.3简单的赋值语句1.4增强赋值语句二、Python 中的多行语句2.1显式续行2.2隐式续行三、Python 缩...
    99+
    2024-04-02
  • Python中表达式与语句
    简述 Python中我暂时并未发现谁对着两个名词的明确定义;我对这两个名词的理解就是,表达式就是你想要执行的对象,语句就是你的具体执行操作。 这里应用慕课网老师的一段话,摘自网上"表达式(Expression)是运算符(operator)...
    99+
    2023-01-30
    表达式 语句 Python
  • C++中的Lambda表达式及表达式语句
    目录一、概念二、左值与右值三、类型转换四、操作符五、思考1、思考下面x变量是左值还是右值,有什么特性?2、思考一下以下赋值操作符的原始代码是怎样的?3、思考以下代码做了什么事情?一、...
    99+
    2024-04-02
  • python语句和缩进的实现方法
    这篇文章主要介绍了python语句和缩进的实现方法,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。python可以做什么Python是一种编程语言,内置了许多有效的工具,Pyt...
    99+
    2023-06-14
  • JavaScript表达式和语句怎么使用
    这篇文章主要介绍了JavaScript表达式和语句怎么使用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇JavaScript表达式和语句怎么使用文章都会有所收获,下面我们一起来看看吧。表达式任何可以计算为值的代...
    99+
    2023-06-26
  • Python if else语句对缩进的要求
    目录一、不要忘记缩进二、缩进多少合适?三、所有语句都要缩进四、同一代码块缩进量要相同五、不要随便缩进前言: 前面的一章我们展示了选择结构的三种基本形式,并给出了实例演示,但是大家在编...
    99+
    2024-04-02
  • C#判断语句的表达式树实现
    C# 提供了以下类型的判断语句: 语句描述if一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。if...else一个 if 语句 后...
    99+
    2024-04-02
  • 怎么理解python运算对象、运算符、表达式和语句
    本篇内容主要讲解“怎么理解python运算对象、运算符、表达式和语句”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么理解python运算对象、运算符、表达式和语句”吧!编程的本质就是数据和运算...
    99+
    2023-06-02
  • Python Lambda表达式:缩写,简洁,强大
    Python Lambda表达式是一个强大且灵活的工具,可用于创建简洁、可读且易于使用的代码。它们非常适合快速创建匿名函数,这些函数可以作为参数传递给其他函数或存储在变量中。 Lambda表达式的基本语法如下: lambda argum...
    99+
    2024-02-09
    Python Lambda表达式 匿名函数 函数式编程
  • Python进阶语法之三元表达式详解
    Python进阶语法之三元表达式详解 Python的三元表达式(Ternary Expressions)是一种简洁高效的编写条件逻辑的方式。与许多其他编程语言一样,Python也提供了三元表达式,可以...
    99+
    2023-10-08
    python 开发语言
  • python进阶之正则表达式
    概念:   正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达对字符串的一种过滤逻辑。 目的?       给定一个正则表达式和另一个字符串,我...
    99+
    2023-01-30
    进阶 正则表达式 python
  • Python的lambda表达式
    匿名表达式---lambda介绍匿名函数- 也是就lambda表达式。介绍几个 序列处理的函数,比如序列过滤、把所有元素都拿过来做某些操作,这种的序列处理函数。这样的函数都有一些特点,会借用别函数来进行操作。这里就会用到lambda ▷匿名...
    99+
    2023-01-31
    表达式 Python lambda
  • 【Python】python map()函数和lambda表达式
    python map(fun,[arg]+)函数最少有两个参数,第一参数为一个函数名,第二个参数是对应的这个函数的参数(一般为一个或多个list)>>>def fun(x):...  &nbs...
    99+
    2023-06-02
  • Python进阶篇之正则表达式常用语法总结
    目录正则表达式概述1、点-匹配所有字符2、星号-重复匹配任意次3、加号-重复匹配多次4、 花括号-匹配指定次数5、 问号-贪婪模式和非贪婪模式6、方括号-匹配几个字符之一7、起始位置...
    99+
    2024-04-02
  • 进阶JAVA篇- Lambda 表达式与 Lambda 表达式的省略规则
    目录         1.0 什么是 Lambda 表达式?         1.1 既然跟匿名内部类相关,先来回顾匿名内部类。          1.2 Lambda 表达式与匿名内部类之间的关系。         1.3 函数式接口  ...
    99+
    2023-10-20
    java python 开发语言
  • python生成器表达式和列表解析
    绝大多数情况下,遍历一个集合都是为了对元素应用某个动作或是进行筛选。如果看过本文的第二部分,你应该还记得有内建函数map和filter提供了这些功能,但Python仍然为这些操作提供了语言级的支持。 (...
    99+
    2022-06-04
    生成器 表达式 列表
  • MySQL中正则表达式查询的SQL语句都有哪些
    本篇文章给大家分享的是有关MySQL中正则表达式查询的SQL语句都有哪些,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。MySQL作为关系型数据...
    99+
    2024-04-02
  • 怎么进行Python正则表达式分析
    今天就跟大家聊聊有关怎么进行Python正则表达式分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。今天写爬虫偶然想到了初学正则表达式时候,看过一篇文章非常不错。检索一下还真的找到了...
    99+
    2023-06-17
  • python语法的缩进和字符转义用法
    本篇内容介绍了“python语法的缩进和字符转义用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!语句的缩进python 与 java 和 ...
    99+
    2023-06-02
  • 如何使用正则表达式匹配注释tsql语句
    如何使用正则表达式匹配注释tsql语句,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。让我们来看一些例子: 代码如下: --...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作