python学习——第二弹

author author     2023-02-07     315

关键词:

前言

上一篇文章​​ python学习——【第一弹】​​​给大家介绍了python中的基本数据类型等,这篇文章接着给大家补充python中的运算符等相关内容。

运算符

python中的运算符主要有:算术运算符,赋值运算符,比较运算符,布尔运算符以及位运算符。

算术运算符

运算符

名称

举例

+

print(1+2) #3

-

print(1-2)#-1

*

print(1*2)#2

\\

print(1/2)#0.5

\\\\

整除

# 整除运算  //
print(11//2) #输出5
# 一正一负向下取整
print(9//-4)#输出-3 -2的下面是-3
print(-9//4)#输出-3

%

取余(取模)

# 取余运算(取模运算)%
# 一正一负要利用公式进行计算——> 余数=被除数-除数*整除数
print(11%5)#输出1
print(9%-4)#输出-3 9-(-4)*(-3)
print(-9%4)#输出3 -9-4*(-3)

**

#取次方运算**
print(2**2)#表示2的2次方
print(4**2)#表示4的2次方

赋值运算符

1:python中的赋值运算符是由 ’ = ’ 表示的,它的执行顺序是 从左至右:

比如

a=1+2
print(a) #将1+2的值赋给等式左边的变量

2:支持链式赋值:

q=w=e=10
print(q,id(q))
print(w,id(w))
print(e,id(e))

python学习——【第二弹】_python

3:支持参数赋值

a1=20;
a1+=10
print(a1)#输出30 20+10=30
a1-=10
print(a1)#输出20 30-10=20
a1*=10
print(a1)#输出200 20*10=200
a1%=15
print(a1)#取余输出0 200%15=5
a1/=10
print(a1)#此时a1=0,故取商=0.5
b1=30
b1//=4
print(b1)#整除关系,输出7

4:支持系列解包赋值

a,b,c=10,20,30  #30-》c  20-》b  10-》a   实际上是三个对象指向三个地址
print(a,id(a))
print(b,id(b))
print(c,id(c))
#注意python是从左到右赋值,系列解包赋值指向不同的地址;并且变量的个数要和值得个数保持一致,否则会抛出ValueError:

python学习——【第二弹】_运算符_02

比较运算符

1:比较运算符用的是 ==  比较运算符得结果是Bool类型

a,b=10,20
print(a==b吗,a==b) #False
print(a!=b吗,a!=b) #True

2:与赋值运算符 = 相区分,比较运算符 == 比较的是两个对象得value值,不比较两个对象的标识;用于比较两个对象的标识所用得是 is,is not  :

list1=[11,22,33,44]
list2=[11,22,33,44]
print(id(list1),id(list2)) #两个变量的标识不相同
print(list1==list2) #两个变量的值是相同的
print(list1 is list2) #False

python学习——【第二弹】_补码_03

布尔运算符

使用布尔运算符返回的是True或False;以下为布尔运算符的使用说明:

布尔运算符

名称

举例

and

#and只有全为真才为True
a,b=1,2
print(a==1 and b==2)#True
print(a==1 and b!=2)#False

or

#or只要有一个是真就为True
a,b=1,2
print(a!==1 or b!==2)#False
print(a==1 or b!=2)#True

not

对操作数取反

#not 
not对操作数取反
--如果运算数是True 那么运行结果是Falae;
如果运算符是False,那么运行结果是True

a1=False
a2=True
print(not a1)#True
print(not a2)#False

in

表示存在

c=hello
print(h in c) #True
print(w in c)#False

not  in

表示不存在

c=hello
print(h not in c) #False
print(w not in c)#True

位运算符

该运算符按二进制位对值进行操作

1:位与 &

​参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0

print(4&8) #0

python学习——【第二弹】_python_04

2:位或 |

​只要对应的两个二进位有一个为1时,结果位就为1

print(4|8) #12

python学习——【第二弹】_补码_05

3:左移位运算符 <<

​把<<右边的运算数的各二进制位全部左移若干位,<<左边的数字指定了移动的位数,高位溢出舍弃,低位补0;向左移动一位相当于*2

print(4 << 1) #8

python学习——【第二弹】_python_06

4:右移位运算符>>

​把‘>>’左边的运算数的各二进制位全部右移若干位,>>右边的数字指定了移动的位数,低位溢出舍弃,高位补0;向右移动一位相当于/2

print(4>>1) #2

python学习——【第二弹】_补码_07


5:异或(^)

按位异或运算符,当两对应的二进位相异时,结果为1

print(4^8) #12

python学习——【第二弹】_python_08

6:取反(~)

按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1

print~5#-6

+5:

   1. 计算原码:0101

   2. 计算补码:0101(正数原码与补码相同)

   3. 对补码依次取反:1010(取反后数字的补码,由符号位可知为负数

   4. 取反后数字反码:1001(负数的反码=补码-1)

   5. 取反后数字原码:1110(相对于反码符号位不变数值位依次取反

   6. 转化为十进制:-6

   

-4:

   1. 计算原码:1100

   2. 计算反码:1011(相对于原码符号位不变,数值位依次取反

   3. 计算补码:1100(负数补码=反码+1)

   4. 对补码依次取反:0011(取反后数字的补码,由符号位可知为正数)

   5. 取反后数字原码0011(正数原码、反码、补码相同

   6. 转化为十进制:+3

我们可以直接记住取反的公式:

~x=-x-1

每篇一语

不忘初心,方得始终!

如有不足,感谢指正!

最强面试题整理第二弹:python进阶面试题(附答案)(代码片段)

大家好呀,我是Rocky0429。Python面试的时候,会涉及到很多的八股文,我结合自己的经验,整理Python最强面试题。Python最强面试题主要包括以下几方面:Python基础(已完成)Python进阶(已完成)Pyt... 查看详情

最强面试题整理第二弹:python进阶面试题(附答案)(代码片段)

大家好呀,我是Rocky0429。Python面试的时候,会涉及到很多的八股文,我结合自己的经验,整理Python最强面试题。Python最强面试题主要包括以下几方面:Python基础(已完成)Python进阶(已完成)Pyt... 查看详情

最强面试题整理第二弹:python进阶面试题(附答案)(代码片段)

大家好呀,我是Rocky0429。Python面试的时候,会涉及到很多的八股文,我结合自己的经验,整理Python最强面试题。Python最强面试题主要包括以下几方面:Python基础(已完成)Python进阶(已完成)Pyt... 查看详情

数据库学习笔记第二弹——mysql的登陆与使用(图文详解2022)(代码片段)

数据库学习笔记第二弹——MySQL的登陆与使用(图文详解2022)文章目录数据库学习笔记第二弹——MySQL的登陆与使用(图文详解2022)1.MySQL的登录1.1服务的启动与停止1.1.1途径1:使用图形界面工具1.1.2途径2:... 查看详情

pythion第二弹

...##################第二节################################################python中数据类型的常见的方法第一个数据类型字符串str字符串里面有很多的功能,叫方法.只要是字符串,就可以用里面的方法,方法有很多,不用刻意的去记住,因为你以后会常... 查看详情

最强面试题整理第二弹:python进阶面试题(附答案)(代码片段)

大家好呀,我是Rocky0429。Python面试的时候,会涉及到很多的八股文,我结合自己的经验,整理Python最强面试题。Python最强面试题主要包括以下几方面:Python基础(已完成)Python进阶(已完成)Pyt... 查看详情

深入理解threadpoolexecutor第二弹(代码片段)

从源头解析ThreadPoolExecutor第二弹—ThreadPoolExecutor的内部类ThreadPoolExecutor主要包括如下内部类:其中AbortPolicy、CallerRunsPolicy、DiscardOldestPolicy、DiscardPolicy表示任务的拒绝策略,当线程池的线程数量达到最大值并且阻塞队列已... 查看详情

web前端-----第二弹css

CSS语法CSS规则由两个主要的部分构成:选择器,以及一条或多条声明。‘‘‘selector{property:value;property:value;...property:value}‘‘‘例如:h1{color:red;font-size:14px;}    css的四种引入方式 1.行内式       ... 查看详情

表单练习第二弹

---恢复内容开始---<bodytext="#33FF00"bgcolor="#33FF33"background="150358666450342800_a580xH.jpg">body里面加属性,字体颜色、背景色、背景图片。在body里面输入的属性是针对在body里面所有内容的属性。<formaction="../10.9表单/www.baidu.html"method=" 查看详情

vue学习——第二弹(代码片段)

前言上一篇文章Vue学习——【第一弹】中我们学习了Vue的相关特点及语法,这篇文章接着通过浏览器中的Vue开发者工具扩展来进一步了解Vue的相关工作机制。Vue的扩展我们打开Vue的官方文档,点击导航栏中的生态系统ÿ... 查看详情

线段树+rmq问题第二弹

   线段树+RMQ问题第二弹  上篇文章讲到了基于SparseTable解决RMQ问题,不知道大家还有没有印象,今天我们会从线段树的方法对RMQ问题再一次讨论。正式介绍今天解决RMQ问题的方法之前,我先对RMQ问题的概念再... 查看详情

lca问题第二弹

LCA问题第二弹 上次用二分的方法给大家分享了对LCA问题的处理,各位应该还能回忆起来上次的方法是由子节点向根节点(自下而上)的处理,平时我们遇到的很多问题都是正向思维处理困难而逆向思维处理比较容易,LCA问题... 查看详情

从一个程序员的角度看——微信小应用(第二弹见解)

...小程序刚通过了代码审核(待发布状态),从最初对它的学习到开发到小程序待发布再到28日微信公开课,也算一步步的了解了微信小程序吧。 28日微信pro公开课张小龙针对小程序进行了一些答疑,之后行业的同僚都很关注... 查看详情

dom事件第二弹(uievent事件)

此文章主要总结UIEvent相关的事件,如有不对的地方,欢迎指正。一、uitls.js(绑定事件公共类)varfixs={‘focusin‘:{standard:‘focus‘,ie:‘focusin‘},‘focusout‘:{standard:‘blur‘,ie:‘foucsout‘},‘input‘:{standard:‘input‘,ie:‘propertychange‘}}v... 查看详情

有趣的网站-第二弹

1.预测您的死亡时间,通过输入出生日期,选择性别、BMI范围(可以通过页面下方输入身高、体重计算出)、生活态度和是否抽烟,点击查看按钮就可以得出结果。我测了我还能活52多年。。不过看着时间越来越少,心理感觉毛... 查看详情

获取免费的gpt网站指南(第二弹)

免费虽好,勿要贪杯前言GPT4free的原理是从大网站的接口中当普罗米修斯,如果换一个思路,公网上很多人都部署了自己的GPT服务,如果能够把他们利用起来,实际上我们平时问问题也够用了 查看详情

liaoliao的四连做第二弹

liaoliao四连做第一弹1.bzoj3211:花神游历各国由于$10^9$以内的数最多只会被开方$10$次,所以我们可以用线段树维护然后剪枝..#include<cstdio>#include<cstring>#include<cstdlib>#include<algorithm>#include<cmath>#defineLLlon 查看详情

hbase存取速度为啥快---第二弹

版权声明:本文为CSDN博主「九品下」的原创文章原文链接:https://blog.csdn.net/w892824196/article/HBase能提供实时计算服务主要原因是由其架构和底层的数据结构决定的,即由LSM-Tree(Log-StructuredMerge-Tree)+HTable(region分区)+Cache决定——客户... 查看详情