运算符
赋值运算符
赋值运算符涉及到的符号有
=(等于)、+=(加等于)、-=(减等于)、*=(乘等于)、 /=、//=、**=(幂运算等于)、%=(取余等于)
其中,最为普通的运算符是 = ,这个符号就是简单的等于含义,可以理解为将等号右边的值赋值给等号左边的变量(也可以是其他容器型数据)。举个例子:
a = 3
print(a)
上面这段代码表示的含义就是将3赋值给 a ,所以,此时的a有了一个新的值就是3,我们输出 a 就可以发现,此时的 a 等于3。
当然,上面这种写法是最简单的运算符,我们下面来说相对高级一些的 +=(加等于)、-=(减等于)、*=(乘等于)、 /=、//=、**=(幂运算等于)、%=(取余等于)这几种赋值方式。
以 += 为例(其他同形式的赋值运算符等同于这种运算方式):
a += 3
print(a)
在上面的演示中,我们发现我们在第一段代码中赋给 a 的值已经由3变为了6,这也表示了 a += 3 这句代码的含义,就是让 a 在原来的基础在加上3,进一步延申,我们把 += 号的两边看成两个部分,那么 += 号的意义就是让左边的部分在之前值的基础上去加上右边的值(请记住,一定是右边的一整个表达式,而不能拆开来看其中某一项!!!)也就是说和 a = a+3 是一个含义,那就很简单了,a += 6 就表示 a 在原来的基础上加上6,以此类推,就显得十分简单。
那同样的,在我们明白了 += 之后,*= ,//= ,就迎刃而解了,用相同的思路去套就可以了,比如:a -= 3 意同 a = a - 3,a *= 3意同 a = a * 3。
这里有几点tips,需要我们去记住:
a. 所有的赋值运算符最终目的是为了给变量赋值。
b. 赋值运算符左边必须是变量,右边可以是任何有结果的表达式。
c. 除了等号外,其他赋值运算符必须是已经赋过值的变量。
d. b+=10=>错误,因为b不存在。
运算符的优先级
a.算数运算符>比较运算符>逻辑运算符>赋值运算符
b.有小括号的先算小括号里面的
c.算数运算符:*大于、/、//、%大于+、-
d.*、/、//、%优先级相等,从右往左算
对于输出的补充
超简便的输出方式:格式化输出
格式化输出名字其实不够精准,这个功能是具体实现方式叫做 格式化字符串。
也就是在输出过程中对于字符串进行一定的格式化,从而达到,更简便,更便于阅读的一种输出方式。
如果不对字符串进行格式化,我们在写代码的时候,就可能会产生冗余,很繁琐,很冗长。
举个例子:我们想输出这样一句话:18岁的张三熟读《孙子兵法》。
age = 18
name = '张三'
print(age, '岁的', name, '熟读《孙子兵法》')
按照上面的方法,我们确实成功输出了相应的文字,但是不够合理,因为我们输出的语句中多出了空格。
所以我们就需要用格式化字符串的方式去更好的输出。
我们在进行上面说到的格式化输出(格式化字符串)时,有4种方法可以使用,分别是:
一、旧式字符串格式化方法
二、format方法
三、格式化字符串字面值(f-字符串)
四、更为高级一些的格式化方式
我们下面就分点分类进行讲解。
一、旧式字符串格式化方法
这种方法是最为简单的,举个例子:
str1 = '%d岁的%s熟读《孙子兵法》' % (age, name)
print(str1)
这样就是最简单的引用变量进行字符串输出的方式,也就称之为 旧式字符串格式化方法 。
在字符串部分(单双引号内部)将变量的数据类型输入,如整型就是 %d ,字符串就是 %s,而在字符串外部则使用 % ()的方式引用变量,括号内为引用,且前后变量保持一一对应。
关于数据类型的一些tips:
%s、%d、%f等被称为占位符,%s对应字符串、%d对应整型、%f对应浮点型
%f=>默认保留6位小数
二、format方法
format方法相较于前者要更为简单,不需要去记那么多种数据类型,我们在这里用 {} 来代替上一种格式化方式中的数据类型,并且在结尾用 .format() 的方式将前面的变量引入,且一一对应,举个例子:
age = 40
name = '海南军阀漠叔'
str2 = '{}岁的{}在海南“横行霸道”'.format(age, name)
print(str2)
我们可以看到,这种输入方式比较简洁,省去了输入数据类型,但是相对来说,还是需要输入 format ,还是不够简便,所以我们就有了第三种格式化方式。
三、格式化字符串字面值(f-字符串)
从某种意义上来说,该方法是format的变种,但他是python的特有方法(前两种方法在其他语言中或多或少出现过),最为简便好用,直接上例子:
age = 18
name = '李华'
edu = '清华大学'
str3 = f'{age}岁的{name}考上了{edu}'
print(str3)
可以看得,这种方法只需要在字符串前面加上 f ,并在后面的 {} 里面输入对应的变量即可,最实用也最好用。
四、更为高级的格式化
这种格式化的方式是三的补充,并无什么特别突出的点,只是在三的基础上,进行一些有用的知识点的简化与补充。
在引入第四种方法之前,我们说一个东西,就是 : 的作用,在格式化输出里, : 作用为说明, : 后面的内容就是说明性的内容,例如:
pi = 3.14
print(f'圆周率为{pi:.6f}')
在这里就是利用 : 对小数位数进行了一个控制,控制它保留六位小数。
既然我们说了冒号是为了对符号前的内容进行解释,那我们的第四种方法就是在这个基础上给说明性的内容一些新奇的东西。
-
千分位符
千分位符就是对于一个千位以上的数,进行逗号分隔,那么这种功能,我们用逗号来实现。str2 = f'余额{1234567890:,}' print(str2)
![在这里插入图片描述](https://img-blog.csdnimg.cn/afd61b49cdff417f920eb6e4bd737931.png)
-
百分比
百分比和保留小数位数组合:%前面添加.N–>N表示小数位数str3 = f'今日boss血量剩余:{0.56:.0%}'
-
自动补齐功能
自动补齐功能是用来对想要输入的数据进行补齐,例如:str4 = f'{123:8>6}' print(str4) str5 = f'{123:*>6}' print(str5)
当 {} 中 : 左边的元素长度大于最右边的数字时,无变化,但若小于,那么自动补齐长度到右边元素所指向的长度,而补齐方向则为 > 或者 < 号,如果希望补齐左边长度,也就是右对齐,那么使用 > ,反过来则就是 < ,而希望往两边补齐的就使用 * 。补齐长度使用的字符,采用 : 右边,补齐方向符左边的元素。