杨桃的Python进阶讲座4——赋值号和等号

本人CSDN博客专栏:https://blog.csdn.net/yty_7

Github地址:https://github.com/yot777/

可能有读者会问,为什么把这些“程序员基本功”的内容放在了“进阶讲座”?其实这正是我的一个体会。Python初级教程学完之后,大家都跃跃欲试,想进一步学习更高级的东西,但对于非计算机专业转行而来的同学,就会遇到隐形的天花板,这就是所谓的“程序员基本功”,导致继续学习的时候遇到一些困难。别怕,你们的苦我也遇到过,因此我会慢慢在进阶讲座和大家分享。如果对进阶讲座涉及到Python的语法记不清楚的时候,请随时回顾Python基础教程。

4.1 赋值号:

a = 5和 a==5 到底有啥区别?

请牢记:一个等号赋值号两个等号才是等于号!大部分编程语言(C、C++、Java等等)都是这样!

赋值号的作用是:把符号右边的值(可以是常数也可以是变量)赋予符号左边的变量。

可以得到以下推论:

1. 赋值号的左边必须是变量(像2=2或者3=a这样写不行),赋值之后赋值号左边的变量的值会改变,变成和右边的值相同。

2. 赋值号的右边可以是常量,也可以是变量:如果赋值号右边是变量,赋值之后赋值号右边变量的值不会改变。

#赋值号举例1
>>> a = 0
>>> b = 5
>>> print(a)
0
>>> print(b)
5
>>> a = b
>>> print(a)
5
>>> print(b)
5

3. 可以给同一个变量赋值多次,甚至可以是不同类型的值(但C、Java等需要提前申明变量类型的语言不行),变量存储的值以最后一次赋值为准

#赋值号举例2
>>> s = 5
>>> s = 6
>>> s = 7
>>> print(s)
7
>>> s = "Hello"
>>> print(s)
Hello
>>> s = [1,2,3]
>>> print(s)
[1, 2, 3]

除此之外,Python允许在同一条语句中同时给多个变量赋值,多个变量的值可以相同也可以不同,但要注意变量的顺序

#赋值号举例3
#给i,j,k三个变量赋予相同的值
>>> i = j = k = 10
>>> print(i)
10
>>> print(j)
10
>>> print(k)
10
#给x,y,z三个变量赋予不同的值
>>> x, y, z = 7, 8, 9
>>> print(x)
7
>>> print(y)
8
>>> print(z)
9
#交换变量a和变量b的值
>>> a = 10
>>> b = 20
>>> a, b = b, a
>>> print(a)
20
>>> print(b)
10

赋值号的用法大家都清楚了吧?现在我们稍微提高一下难度,看看自增赋值号自减赋值号

自增赋值号:+=

含义是把符号左边的变量加上符号右边的值或变量,再赋给符号左边的变量。

#赋值号举例4
>>> i = 5
>>> i += 1
>>> print(i)
6

理解方法:把 i += 1做个变形,自增赋值号左边的内容全部复制到右边,左边只保留变量名,自增赋值号变为赋值号,如下:

                      i = i + 1

这就很清楚的表示把变量 i + 1的值赋给变量i

自增赋值号在循环语句中用得极为广泛,比如要输出1到5的自然数,代码如下:

#自增赋值号举例:
>>> i = 1
>>> while i<6:
...   print(i)
...   i += 1
运行结果:
1
2
3
4
5

实际上,如果不习惯 i += 1这种写法,写成 i = i +1 也是完全可以的。但不推荐,因为几乎没人写i = i +1

自减赋值号:-=

含义是把符号左边的变量减去符号右边的值或变量,再赋给符号左边的变量。

#自减赋值号举例
>>> j = 6
>>> k = 5
>>> j -= k
>>> print(j)
1

理解方法:把 j -= k做个变形,自减赋值号左边的内容全部复制到右边,左边只保留变量名,自减赋值号变为赋值号,如下:

                      j = j - k

其实四则运算的乘号、除号也可以加在赋值号的前面,构成“自乘赋值号”和“自除赋值号”,赋值方法完全类似,但用的人极少。

4.2 等号:

等号(==)其实是比较运算符的一种,常见的条件比较符有以下六种:

==(等号)、!=(不等号)、>(大于号)、>=(大于等于号)、<(小于号)、<=(小于等于号)

比较运算符的含义也就是顾名思义的意思。但你知道3 == 2以及3 != 2 表示什么吗?

#等号举例1
>>> 3 == 2
False
>>> 2 == 2
True
>>> 3 != 2
True
>>> 2 != 2
False

Python对于比较运算符的结果返回的是True(真)或False(假)这样的判断结果值,因此等号(==)经常用到判断语句中:

#等号举例2
>>> a = 5
>>> b = 5
>>> if a==b:
...   print("a等于b")
... else:
...   print("a不等于b")
运行结果:
a等于b

请注意if语句只有当执行的条件是True的时候才执行。a==b为True,所以打印出"a等于b",再举个例子:

#等号举例3
>>> c = 6
>>> d = 8
>>> if c==d:
...   print("c等于d")
... else:
...   print("c不等于d")
运行结果:
c不等于d

总结:

==(两个等号)一般只能出现在判断语句if的那一行中表示相等,其他地方出现的 = (一个等号)都是赋值号,从右向左赋值。

题外话:

少数编程语言中的 =(一个等号)就是等于的意思,比如SQL语言;也有的语言中的等号和赋值号都写成 =(一个等号),比如Excel的公式、VB等,在遇到的时候请留意。

本人CSDN博客专栏:https://blog.csdn.net/yty_7

Github地址:https://github.com/yot777/

如果您觉得本篇本章对您有所帮助,欢迎关注、评论、点赞!Github欢迎您的Follow、Star!
 

发布了55 篇原创文章 · 获赞 16 · 访问量 6111

猜你喜欢

转载自blog.csdn.net/yty_7/article/details/104307249
今日推荐