python从0开始学习(四)

目录

前言

1、算数运算符

1.1 '//':整除运算符

1.2 '%':取模操作

1.3 '**':幂运算

2、赋值运算符

3、比较运算符

4、逻辑运算符

5、位运算符

5.1 &:按位与

5.2 |:按位或

5.3 ^:按位异或

5.4 ~:按位取反

5.5 <<和>>:左移位和右移位

总结


前言

        上一篇文章讲

到了python中数据类型转换,包括显示类型转换和隐式类型转换。之后又讲解了eval函数,它的作用是去掉字符串的引号并运行该语句。本章接着往下讲。

1、算数运算符

        算数运算符包括:+、-、*、/、//、%、**

        首先+、-、*、/。这四个运算符很好理解,就是我们数学中学习的加减乘除操作。下面主要讲解剩下的运算符。

1.1 '//':整除运算符

        //这个运算符是整除运算符,是计算出两个数相除后结果,然后保留整数部分。结果为整型数据。

print(10//3)

        结果如下:

        得到整数3。

1.2 '%':取模操作

        %这个运算符是计算两数相除后的余数。下面举例说明:

print(10%3)

        结果如下:

        10除3的结果为3余数为1,因此输出为1。

1.3 '**':幂运算

        **这个操作数是用来操作幂运算的,如:a**b。指的就是求a的b次方的值。

print(10**2)

        求10的2次方,结果为100。

2、赋值运算符

        复制运算符包括:=、+=、-=、*=、/=、//=、%=、**=

        首先讲'='。单个等于号就是普通的复制,将等号右边的数赋值给等号左边。

a=10
print(a)

        这里将10赋值给a,最后输出a的值,就为10。

        +=、-=、*=、/=.......像这类,在算数运算符后加上一个等号的赋值运算符,都有同一个规则,下面举一个例子:假设赋值a=10,然后进行这个操作:a+=10。最后a的值就是20。a+=10就相当于a=a+10。

        同理,a*=10相当于a=a*10;a%10相当于a=a%10。以此类推。

a=10
b=10
c=10
d=10
a+=10
print(a)
b*=10
print(b)
c%=10
print(c)
d**=10
print(d)

        效果上图。

3、比较运算符

        比较运算符包括:>、>=、<、<=、==、!=

        >符号表示判断是否大于,a>b,此操作,如果a>b,则返回True,否则返回False。

a=10
b=20
print('a大于b吗?',a>b)

        由于a的值10小于b的值20,所以a>b这个操作返回值为False。

        同理,a<b表示判断a是否小于b,如果小于,则返回True,否则返回False。再同理>=、<=这两个操作也类似,a>=b是在判断a是否大于等于b,如果是,则返回True,否则返回False。a<=b是判断a是否小于等于b,如果是,返回True,否则返回False。

        下面看'==',a==b,这个操作,是在判断a是否等于b,如果相等,则返回True,否则返回False。'!=',则是判断两个数是否不相等,如果不相等返回True,否则返回False。

print(10==10)
print(1==10)
print(10!=10)
print(1!=10)

        效果如上图。

4、逻辑运算符

        逻辑运算符包括:and、or、not

x and yx和y都为True,返回值才为True,否则返回False。
x or yx和y其中一个为True,返回值则为True。都为False,返回值为False。
not xx为True,返回值为False。x为False,返回值为True。

print(10>5 and 9<10)
print(1 and 0)
print(1 or 0)
print(not True)

        在python中,非0即为True。0为False。

        下面讲解位运算符,对于前面4种运算符:算术运算符、赋值运算符、比较运算符、逻辑运算符。都是需要掌握的。而接下来讲的位运算符,了解即可。

        

5、位运算符

        包括:&、|、……、~、<<、>>

5.1 &:按位与

        按位与运算:讲数据先拆分成二进制形式,然后按位进行与运算,都为1则结果为1,其余结果都为0。

        上图,表示12&8,结果为8。

print(12&8)

5.2 |:按位或

        与按位与相似,只不过它是对数据按位进行'或'运算。

        上图表示4|8。结果是12.

print(4|8)

        结果符合。

5.3 ^:按位异或

        按位异或逻辑是,相同则返回0,不同则返回1。我就不用程序举例了。

5.4 ~:按位取反

        按位取反操作,对每一位取反,原本为1则返回0,原本为0则返回1。

5.5 <<和>>:左移位和右移位

        <<表示左移位,使用格式是:a<<b。表示使得a的二进制形式左移两位:移位后空缺的位置补上0。

        >>表示右移位,与左移位格式相同:a>>b。表示将a以二进制的形式右移b位。但是要注意,在空缺的位置,并不是全补0.要分情况:如果原本a对应二进制数据的最高位为1,则补1;如果a对应二进制数据最高位为0,则补0。

        位运算符就讲到这了。

总结

        本篇文章讲解了运算符,包括:算数运算符、赋值运算符、比较运算符、逻辑运算符以及位运算符。希望对你有所帮助。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/7280.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux学习笔记(3)---- Debian测试网速指令及查看是否千兆网卡

测试网速指令 在Debian系统中&#xff0c;测网速的指令主要有以下几种方法&#xff1a; 使用speedtest-cli工具&#xff1a; speedtest-cli是一个常用的网络速度测试工具&#xff0c;可以通过命令行进行安装和运行。首先&#xff0c;需要安装speedtest-cli&#xff1a; sud…

工业物联网技术在生产流程中的应用及优势与挑战——青创智通

工业物联网解决方案-工业IOT-青创智通 随着科技的不断发展&#xff0c;物联网技术逐渐渗透到各个行业中&#xff0c;尤其是在工业领域&#xff0c;工业物联网的应用正在逐步重塑生产流程。本文将探讨工业物联网如何影响生产流程&#xff0c;并分析其带来的优势和挑战。 一、工…

k8s保持pod健康

存活探针 Kubemetes 可以通过存活探针 (liveness probe) 检查容器是否还在运行。可以为 pod 中的每个容器单独指定存活探针。如果探测失败&#xff0c;Kubemetes 将定期执行探针并重新启动容器。 Kubemetes 有以下三种探测容器的机制&#xff1a; HTTP GET 探针对容器的 IP 地…

java学习记录最后一篇

面向对象编程 封装 该露的露&#xff0c;该藏的藏 我们程序设计要追求“高内聚&#xff0c;低耦合”。高内聚就是类的内部数据细节由自己完成&#xff0c;不允许外部干涉&#xff1b;低耦合&#xff1a;仅暴露少量的方法给外部使用。 封装&#xff08;数据的隐藏&#xff0…

AI部署指南

部署指南 建议大家尽可能的自己去部署&#xff0c;如果实在懒得搞&#xff0c;可以找我来帮你部署&#xff0c;详情参考 服务器代部署说明。 由于时间仓促&#xff0c;文档可能尚未详尽&#xff0c;我将在后续逐步补充详细的说明文档。 架构草图 项目依赖 必选依赖 MySQ…

5月3日江苏某厂冷却塔清洗工作汇报-智渍洁

5月3日 施工人员&#xff1a;张能超&#xff0c;张伟&#xff0c;刘平&#xff0c;曾巧 施工事项&#xff1a;空冷器脱脂 今日工作进度&#xff0c;清洗6台遇到的问题&#xff0c;就是那个喷雾器不经用&#xff0c;一会儿又坏了 重庆智渍洁环保科技有限公司专注于工业清洗&…

记录创建项目java version 没有8的问题

问题&#xff1a; 解决方案 java版本选择21&#xff08;21可以兼容jdk8&#xff09; SpringBoot选择3.2.5 进入项目后手动在pom.xml中修改版本

安卓手机原生运行 ARM Ubuntu 24.04 桌面版(一)

本篇文章&#xff0c;聊一聊尝试让安卓手机原生运行 Ubuntu&#xff0c;尤其是运行官方未发布过的 ARM 架构的 Ubuntu 24.04 桌面版本。 写在前面 最近的几篇文章&#xff0c;都包含了比较多的实操内容、需要反复的复现验证&#xff0c;以及大量的调试过程&#xff0c;为了不…

Sy9-dhcp/dns服务配置

前言、 课程需要&#xff08;进入服务器综合配置使用阶段了&#xff09;&#xff0c;这里还是沿用桌面版的ubuntu来配置dhcp和dns&#xff0c;这里updated了新的版本。2024.5 server端环境&#xff1a; Win11VMS&#xff1a;192.168.105.1192.168.105.128 &#xff08;ubuntu…

vivado UltraScale 比特流设置

下表所示 UltraScale ™ 器件的器件配置设置可搭配 set_property <Setting> <Value> [current_design] Vivado 工具 Tcl 命令一起使用。

第08章 IP分类编址和无分类编址

8.1 本章目标 了解IP地址的用途和种类了解分类编址和无分类编址区别掌握IP地址、子网掩码、网关概念及使用掌握子网划分及超网划分方法掌握无分类编址的改变和使用 8.2 IP地址的用途和种类 分类编址&#xff1a;造成地址的浪费&#xff0c;以及地址不够用&#xff1b;无分类编…

寒武纪及瑞芯微平台调用加速调研

文章目录 1 寒武纪加速平台简介1.1 加速平台简介1.1.1 算力硬件1.1.2 配套软件 1.2 部署流程简介1.3 部署环境搭建1.3.1 安装驱动1.3.2 安装CNToolKit1.3.3 配置模型移植开发环境 1.4 模型部署1.4.1 模型转换旧文件格式1.4.2 量化模型生成1.4.3 验证结果1.4.4 离线模型生成 1 寒…

【自用】了解移动存储卡的基本信息

前言 本文是看B站视频做的一个简单笔记&#xff0c;方便日后自己快速回顾&#xff0c;内容主要介绍了存储卡基本参数&#xff0c;了解卡面上的数字、图标代表的含义。对于日后如何挑选判断一张存储卡的好坏、判别一张存储卡是否合格有一定帮助。 视频参考链接&#xff1a;【硬…

【StarRocks系列】 Trino 方言支持

我们在之前的文章中&#xff0c;介绍了 Doris 官方提供的两种方言转换工具&#xff0c;分别是 sql convertor 和方言 plugin。StarRocks 目前同样也提供了类似的方言转换功能。本文我们就一起来看一下这个功能的实现与 Doris 相比有何不同。 一、Trino 方言验证 我们可以通过…

HTTP、RTSP、RTMP、RTP,RTCP,HLS,MMS的概念、区别、用法

背景知识 先有TCP/IP协议簇 5层模型&#xff0c;后有DoD 4层模型&#xff0c;再有OSI 7层模型。 TCP/IP协议簇&#xff08;TCP/IP Suite&#xff09;除了代表TCP与IP这两种通讯协议外&#xff0c;更包含了与TCP/IP相关的数十种通讯协议&#xff0c;例如&#xff1a;SMTP、DNS、…

使用docker-compose编排Lnmp(dockerfile) 完成Wordpress

目录 一、 Docker-Compose 1.1Docker-Compose介绍 1.2环境准备 1.2.1准备容器目录及相关文件 1.2.2关闭防火墙关闭防护 1.2.3下载centos:7镜像 1.3Docker-Compose 编排nginx 1.3.1切换工作目录 1.3.2编写 Dockerfile 文件 1.3.3修改nginx.conf配置文件 1.4Docker-Co…

SpringBoot+Vue+Element-UI实现学生综合成绩测评系统

前言介绍 学生成绩是高校人才培养计划的重要组成部分&#xff0c;是实现人才培养目标、培养学生科研能力与创新思维、检验学生综合素质与实践能力的重要手段与综合性实践教学环节。而学生所在学院多采用半手工管理学生成绩的方式&#xff0c;所以有必要开发学生综合成绩测评系…

机器学习——2.损失函数loss

基本概念 损失函数也叫代价函数。损失函数就是计算预测结果和实际结果差距的函数&#xff0c;机器学习的过程就是试图将损失函数的值降到最小。 图左&#xff1a;&#xff5c;t_p - t_c&#xff5c; 图右&#xff1a;&#xff08;t_p - t_c&#xff09;**2 代码实…

图像分割入门-Unet++理论与实践

探索 U-net&#xff1a;改进的图像分割神经网络 引言 图像分割是计算机视觉领域中的重要任务&#xff0c;旨在将图像中的每个像素分配到特定的类别或区域。在许多应用中&#xff0c;如医学影像分析、自动驾驶和地块识别等领域&#xff0c;图像分割都扮演着关键角色。 U-net …

echars设置渐变颜色的方法

在我们日常的开发中&#xff0c;难免会遇到有需求&#xff0c;需要使用echars设置渐变的图表&#xff0c;如果我们需要设置给图表设置渐变颜色的话&#xff0c;我们只需要在 series 配置项中 添加相应的属性配置项即可。 方式一&#xff1a;colorStops type&#xff1a;‘lin…