python is 和 == 区别(8)

    在python中is和==都说常用的运算符之一,主要用于检测两个变量是否相等,返回True或者False,具体区别在哪呢?

 

一.前言

    在讲解is和==区别直接先讲解一下内置函数id(),其实在文章 python可变数据类型和不可变数据类型 中也对内置函数id()有过讲解,主要用于获取变量的内存地址!关于内存现在不做过多讲解,你可以把内存地址当作一串数字符号,内存地址就好比每个人都有一个身份证号码一样!

# !usr/bin/env python
# -*- coding:utf-8 _*-
"""
@Author:何以解忧
@Blog(个人博客地址): shuopython.com
@WeChat Official Account(微信公众号):猿说python
@Github:www.github.com
 
@File:python_is.py
@Time:2019/10/26:25
 
@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
"""
 
a = 5
b = False
c = "hello"
 
print("a内存地址:{}".format(id(a)))
print("b内存地址:{}".format(id(b)))
print("c内存地址:{}".format(id(c)))

输出结果:

a内存地址:1784504608
b内存地址:1784012992
c内存地址:2126520897696

 

二.python运算符 ==

    如果两个变量的值相等,那么运算符 == 成立,返回True;反之返回False;示例代码如下:

a = 3
b = 3
print(a==b)
 
# 整数与浮点数的比较
a = 3
b = 3.0
print(a==b)
 
a = 3
b = 2.9999
print(a==b)
 
# 字符串比较
a = "hello world"
b = "HELLO WORLD"
c = "hello "
d = "hello world"
print(a==b,a==c,b==c,a==d)

输出结果:

 

 

三.python运算符 is

    1.两个变量的值相等;

    2.变量地址也相同(可以通过内置函数id获取变量内存地址);

    如果同时满足以上两个条件,运算符 is 才成立,返回True;反之,不满足其中任何一个条件都会返回False;示例代码如下:

输出结果:

 

 

猜你喜欢:

    1.python可变数据类型和不可变数据类型

    2.python全局变量和局部变量

    3.python字符串/列表/元组/字典之间的相互转换

 

    转载请注明:猿说Python » python is和==区别

 

技术交流、商务合作请直接联系博主
扫码或搜索:猿说python
python教程公众号
猿说python
微信公众号 扫一扫关注
原文地址:https://www.cnblogs.com/shuopython/p/12044119.html