Python赋值运算符(入门必读)

赋值运算符用来把右侧的值传递给左侧的变量(或者常量);可以直接将右侧的值交给左侧的变量,也可以进行某些运算后再交给左侧的变量,比如加减乘除、函数调用、逻辑运算等。

Python中最基本的赋值运算符是等号=;结合其它运算符,=还能扩展出更强大的赋值运算符。

基本赋值运算符

=是Python中最常见、最基本的赋值运算符,用来将一个表达式的值赋给另一个变量,请看下面的例子:

#将字面量(直接量)赋值给变量n1 = 100f1 = 47.5s1 = "https://topic.kaikeba.com/biancheng/python"#将一个变量的值赋给另一个变量n2 = n1
f2 = f1#将某些运算的值赋给变量sum1 = 25 + 46 sum2 = n1 % 6s2 = str(1234)  #将数字转换成字符串s3 = str(100) + "abc"123456789101112复制代码类型:[python]

连续赋值

Python中的赋值表达式也是有值的,它的值就是被赋的那个值,或者说是左侧变量的值;如果将赋值表达式的值再赋值给另外一个变量,这就构成了连续赋值。请看下面的例子:

a = b = c = 1001复制代码类型:[python]

=具有右结合性,我们从右到左分析这个表达式:

c=100表示将100赋值给c,所以c的值是100;同时,c=100这个子表达式的值也是100。

b=c=100表示将c=100的值赋给b,因此b的值也是100。

以此类推,a的值也是100。

最终结果就是,a、b、c三个变量的值都是100。

=和==

=和==是两个不同的运算符,=用来赋值,而==用来判断两边的值是否相等,千万不要混淆。

扩展后的赋值运算符

=还可与其他运算符(包括算术运算符、位运算符和逻辑运算符)相结合,扩展成为功能更加强大的赋值运算符,如表1所示。扩展后的赋值运算符将使得赋值表达式的书写更加优雅和方便。

表1Python扩展赋值运算符

 
运算符 说 明 用法举例 等价形式
= 最基本的赋值运算 x = y x = y
+= 加赋值 x += y x = x + y
-= 减赋值 x -= y x = x - y
*= 乘赋值 x *= y x = x * y
/= 除赋值 x /= y x = x / y
%= 取余数赋值 x %= y x = x % y
**= 幂赋值 x **= y x = x ** y
//= 取整数赋值 x //= y x = x // y
&= 按位与赋值 x &= y x = x & y
|= 按位或赋值 x |= y x = x | y
^= 按位异或赋值 x ^= y x = x ^ y
<<= 左移赋值 x <<= y x = x << y,这里的 y 指的是左移的位数
>>= 右移赋值 x >>= y x = x >> y,这里的 y 指的是右移的位数

这里举个简单的例子:

n1 = 100f1 = 25.5n1 -= 80  #等价于 n1=n1-80f1 *= n1 - 10 #等价于 f1=f1*( n1 - 10 )print("n1=%d" % n1)
print("f1=%.2f" % f1)123456复制代码类型:[python]

运行结果为:

n1=20

f1=255.00

通常情况下,只要能使用扩展后的赋值运算符,都推荐使用这种赋值运算符。

但是请注意,这种赋值运算符只能针对已经存在的变量赋值,因为赋值过程中需要变量本身参与运算,如果变量没有提前定义,它的值就是未知的,无法参与运算。例如,下面的写法就是错误的:

n += 101复制代码类型:[python]

该表达式等价于n=n+10,n没有提前定义,所以它不能参与加法运算。

(0)

相关推荐

  • RealPython 基础教程:Python 运算符和表达式

    " 运算是程序的基本功能,而运算符和表达式则是最基本的运算单元" 在了解了不同类型的变量之后,我们现在该用这些变量做点什么了. 今天,我们将了解如何在变量上执行计算.你最终将会掌握 ...

  • 什么是Python表达式?Python基础入门

    初学Python的时候,大家都会接触到各种专业术语,比如说表达式.语句等,那么你知道什么是Python表达式吗?Python表达式由什么构成呢?想要知道,这篇文章你一定要看. Python表达式由什么 ...

  • java学习——7运算符与表达式(二)

    接上篇:java学习--6运算符与表达式(一) (2)关系运算符 关系运算,即为比较大小的运算. 有:>(大于).<(小于). ==(等于). >=(大于等于). <=(小于等 ...

  • Python基础手册17——简单语句

    Python语句 Python的语法实际上是由语句和表达式组成的(语句使用关键字来组成,只执行某种操作,可以没有返回值:而表达式没有关键字,是使用数学运算符构成的算数表达式,是一个单纯的运算求值过程, ...

  • 2.5. 运算符与表达式 |《Python 简明教程 2018》| Python 技术论坛

    运算符与表达式# 通常你所写出的程序语句(逻辑行)会包含若干表达式. 如 2 + 3 即为一个简单的表达式.表达式由运算符与操作数构成. 运算符是一些可以用 + 号或其他关键词符号替代的功能.运算符会 ...

  • 《零基础看得懂的C语言入门教程》——(六)轻松了解逻辑运算

    https://m.toutiao.com/is/JmMSxae/ 一.学习目标 了解逻辑判断的概念 了解if语句的使用方法 了解switch语句的使用方法 了解逻辑运算符的使用方法 目录 <零 ...

  • Python循环结构中else用法(入门必读)

    Python 中,无论是 while 循环还是 for 循环,其后都可以紧跟着一个 else 代码块,它的作用是当循环条件为 False 跳出循环时,程序会最先执行 else 代码块中的代码. 以 w ...

  • Python创建包,导入包(入门必读)

    <Python包>一节中已经提到,包其实就是文件夹,更确切的说,是一个包含"__init__.py"文件的文件夹.因此,如果我们想手动创建一个包,只需进行以下 2 步操 ...

  • Python class:定义类(入门必读)

    前面章节中已经提到,类仅仅充当图纸的作用,本身并不能直接拿来用,而只有根据图纸造出的实际物品(对象)才能直接使用.因此,Python程序中类的使用顺序是这样的: 1.创建(定义)类,也就是制作图纸的过 ...

  • Python try except异常处理详解(入门必读)

    Python中,用tryexcept语句块捕获并处理异常,其基本语法结构如下所示: try: 可能产生异常的代码块except [ (Error1, Error2, ... ) [as e] ]: 处 ...

  • Python文件基本操作(入门必读)

    Python中,对文件的操作有很多种,常见的操作包括创建.删除.修改权限.读取.写入等,这些操作可大致分为以下2类: 1.删除.修改权限:作用于文件本身,属于系统级操作. 2.写入.读取:是文件最常用 ...

  • 自学中医入门必读(完整版)

    引:小文自2008年成稿以来,各处多有转载,大都只有前两节:至2015年续写第三节后,仍未免有憾.直至今日(2017年11月8日),第四节完成,全篇方得始终.再将全文修订,增删文字,令与时进,令文义通 ...

  • 爱中医的进来,自学中医入门必读(完整版)

    转自原创:天下无疾 引:小文自2008年成稿以来,各处多有转载,大都只有前两节:至2015年续写第三节后,仍未免有憾.直至今日(2017年11月8日),第四节完成,全篇方得始终.再将全文修订,增删文字 ...

  • 细说六爻纳甲法中卦变与爻变的断卦解析,入门必读

    由老阴变为少阳叫做变,由老阳变为少阴叫做化.变犹如事物由消损而转为增长,由后退转为进取,由深夜转向白昼:化犹如事物由成熟转向凋败,由上升转为下降,由默契转为隔阂. 在<增删卜易>里:交为老 ...

  • 四柱八字预测入门必读

    我们学习四柱八字的过程中,常常认为必须掌握好基础知识才能进一步学习,实际上,基础知识非常宽泛,掌握起来虽容易但没有重点,也不知道该用在什么地方.建议新手朋友可以换种思维方式,一开始就从课前必读和实际案 ...