python 查看变量_剖析python运算符is和==的区别

80941f0ab31353d8bfeb68f7f5fecaa9.gif

is和==这两个运算符一直是困扰python的初学者,它们都可以用来判断某个对象是否是某个值,那么到底什么时候用is,什么时候用==去判断某个对象是否是某个值哪?下面勇哥结合实例给大家分享下两者的区别和使用建议。

一、引入

首先python是一门支持面向对象的编程语言,在python中,一切皆对象,每个对象都由三个要素构成:

1、 对象的存放地址(就是对象的值在内存中存在哪个地方)

2、 对象的类型(对象属于那种数据类型)

3、 对象的值(对应内存地址存放的值)

在python中,如果我们要查看某个对象的存放位置,可以通过python提供的内置函数id(对象名称)去查看。如图所示:

d8e445225b3afc2ee50187e16b0cc603.png

查看某个对象的类型名称,我们可以通过python提供的内置函数type(对象名)去查看。

如图所示:

859ce83bae4bd2a07988ea0ad1c1c147.png

查看某个对象的值就比较好看,变量的话可以使用print去查看。

is和==都是python中的运算符,可以对两个对象进行比较。

如图所示:

096e5bde1bda826772c5e517f5158b9a.png

在计算机中,每一块内存都有一个唯一的地址以供变量去访问内存中的内容,这个地址会被赋给变量的id属性,所以a = 5;b = 5时a和b的id是一样的,都是5所在内存的地址。

如图所示:

82bf130c48eac2d2ffe248f2bc53b239.png

因此is主要用来判断两个对象的id是否相等,当两个对象的id相等时,说明这两个变量指向的地址是相同的,那么这两个变量的一切属性都相同。而==主要用来判断==符号左右两边对象的值是否相等,其调用了对象的__eq__()方法。

如图所示:

3a3e0d218acbe2be2bb00f572fbeace3.png

is 运算符比 == 效率高,在变量和None进行比较时,应该尽量使用 is进行比较。

如图所示:

49c3ea115fac033113ff544d6548af64.png

为了帮助大家更轻松的学好Python,我给大家分享一套Python学习资料,帮助大家在成为Python高手的道路上披荆斩棘

需要这份资料,那么帮忙点个 再看 转发一下 分享出去

然后加微信:xing430611(可以免费预约一节Python爬虫的直播公开课讲解哦)

PS:如果觉得本篇文章对您有所帮助,欢迎关注、订阅、顶!

*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。

3733185b5d4d6eb2ad1de7c9d3a66ad4.gif

觉得不错,点个“在看”然后转发出去7d5b89c4175c4979d3fdcac77335c804.gif

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

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

相关文章

Docker是啥?容器变革的火花?

戳蓝字“CSDN云计算”关注我们哦!编译作者:风车云马(微信号:zhangyisq)文︱Serdar Yegulalp本篇文章转自InfoWorld网站在畅聊Docker之前,我们先讲讲什么是容器? …

DRDS到MaxCompute(原ODPS)数据归档性能优化测试

摘要: cdp同步基本原理 数据集成(Data Integration)是阿里巴巴集团提供的数据同步平台。该平台具备可跨异构数据存储系统、可靠、安全、低成本、可弹性扩展等特点,可为 20 多种数据源提供不同网络环境下的离线(全量/增…

Vue 项目预热

软件版本Vue.js2.5.2vue-router3.0.1Node.jsv8.15.0NPM6.4.1文章目录一、 Vue项目预热 - 环境配置1. node.js环境配置1-1. node.js下载1-2. node.js安装1-3. node.js安装完成后验证3-2. 创建一个基于 webpack 模板的项目3-3. 以npm形式运行travel项目 dev环境一、 Vue项目预热 …

activiti动态办理人_安全生产许可证办理相关问题

安全生产许可证办理相关问题众所周知,安全生产许可证是建筑企业的重要证件,也是企业开展工程的保障,取得建筑资质证书后必须申请安许证。在建筑企业动态核查中,安许证及其相关安全生产条件是核查的重点,虽然安全许可证…

超干货|使用Keras和CNN构建分类器(内含代码和讲解)

摘要: 为了让文章不那么枯燥,我构建了一个精灵图鉴数据集(Pokedex)这都是一些受欢迎的精灵图。我们在已经准备好的图像数据集上,使用Keras库训练一个卷积神经网络(CNN)。为了让文章不那么枯燥&a…

网易云音乐热评的规律,44万条数据告诉你

戳蓝字“CSDN云计算”关注我们哦!网易云的每日推荐里藏着你听过的歌,你听过的歌里藏着你的故事。网易云音乐的评论里,藏着许多人的故事。我们爬取了网易云音乐歌单中48400首歌的444054条热评,来看看网易云的热门评论里&#xff0c…

java servlet spring_spring与tomcat 对应关系,servlet各版本写法

构建项目时,需要springjdktomcat各版本对应关系,找了半天,一点都不高效,特此总结下,方便查阅。tomcatjdkservlet对应关系官网文档地址:http://tomcat.apache.org/whichversion.html当前时间版本关系。sprin…

数据科学指南

摘要: 本文为学习数据科学的指南,从编程语言、数据库管理、数据收集和整理方法、特征工程、机器学习模型、模型评估方面进行讲述。数据科学是一个相当庞大且具有多样化的领域,侧重于数学、计算机科学和领域专业知识。但是在本文中大部分内容将…

乐高ev3搭建图_乐高EV3机械爪合集

点击上方蓝字关注我!乐高EV3机械爪合集哈喽小伙伴们!新的一周我们又见面啦。这周给大家带来的是EV3的机械爪合集,5种不同结构类型的机械爪来自五十川老师的作品,可以应用于各种比赛或者任务场景中,下面我们先来看一下这…

马云卸任,张勇宣布未来五年目标:消费规模10万亿;华为发布基于5G和AI解决方案;新iPhone不支持5G 库克:市场不成熟……...

戳蓝字“CSDN云计算”关注我们哦!嗨,大家好,重磅君带来的【云重磅】特别栏目,如期而至,每周五第一时间为大家带来重磅新闻。把握技术风向标,了解行业应用与实践,就交给我重磅君吧!重…

望京“黑客”图鉴

摘要: 不是所有黑客可以登顶望京阿里中心 A 座 34 楼。本文转载自雷锋网宅客频道。最近《北京女子图鉴》很火。不过看这篇文章之前,你要做好几个心理准备:1.这篇文章不是讲黑客男主如何在北京遇上12个女主“打怪升级”的故事。2.因为我们的采…

解决:'webpack-dev-server' 不是内部或外部命令,也不是可运行的程序 或批处理文件。

webpack-dev-server错误法则: 前往项目根目录删除node_modules文件夹,然后在项目根目录路径下的终端运行"npm install"等待安装完之后,再次运行“npm run dev”,有些人的是马上就可以了,然而往往还会有人&am…

GPU云服务器深度学习性能模型初探

摘要: 本文根据实测数据,初步探讨了在弹性GPU云服务器上深度学习的性能模型,可帮助科学选择GPU实例的规格。1 背景得益于GPU强大的计算能力,深度学习近年来在图像处理、语音识别、自然语言处理等领域取得了重大突破,GP…

HDC.2019后再发力,AppGallery Connect服务新升级

不久前,华为2019开发者大会在东莞松山湖圆满落,来自全球的1500多个合作伙伴、5000多名开发者汇聚一堂,共同探讨未来科技发展,其中华为应用市场AppGallery Connect服务也在大会上重磅亮相,引起了广大开发者的关注。如今…

idea 利用vue.js插件创建vue初始化项目

IDEA 构建出的 Vue 项目是不含 node_modules 的,所以要先调出终端,执行 npm install 运行完成后,输入 npm run dev 即可。 vue初始化项目完成!!! 另外 IDE 嘛,总是在 UI 上下了很多功夫&am…

Tensorflow快餐教程(4) - 矩阵

摘要: Tensorflow矩阵基础运算矩阵矩阵的初始化矩阵因为元素更多,所以初始化函数更多了。光靠tf.linspace,tf.range之类的线性生成函数已经不够用了。可以通过先生成一个线性序列,然后再reshape成一个矩阵的方式来初始化。例&…

为什么阿里程序猿纷纷在内网晒代码?

摘要: 大家知道,阿里有两万多名可爱的程序员。 他们也没什么别的爱好,就是多才多艺了一点:这帮阿里程序猿在改变世界前 要先撼动歌坛 就是热心肠了一点:阿里有个程序员,因为闯红灯上新闻了 虽然怕老婆但也能…

从七个方面,面试大厂高级工程师

戳蓝字“CSDN云计算”关注我们哦!在上周,我密集面试了若干位Java后端的候选人,工作经验在3到5年间。我的标准其实不复杂:第一能干活;第二Java基础要好;第三最好熟悉些分布式框架。我相信其它公司招开发时&a…

Java需要掌握的底层知识_Java程序员应该掌握的底层知识

缓存缓存行:缓存行越大,局部性空间效率越高,但读取时间慢缓存行越小,局部性空间效率越低,但读取时间快取一个折中值,目前多用:64字节public class CacheLinePadding { //执行时间在4s左右public…