溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python運(yùn)算符中is和==有什么區(qū)別

發(fā)布時(shí)間:2020-06-04 15:25:11 來源:億速云 閱讀:282 作者:Leah 欄目:編程語言

python運(yùn)算符中is和==有什么區(qū)別?這篇文章運(yùn)用了實(shí)例代碼展示,代碼非常詳細(xì),可供感興趣的小伙伴們參考借鑒,希望對大家有所幫助。

一.前言

在講解is和==區(qū)別直接先講解一下內(nèi)置函數(shù)id(),其實(shí)在文章 python可變數(shù)據(jù)類型和不可變數(shù)據(jù)類型 中也對內(nèi)置函數(shù)id()有過講解,主要用于獲取變量的內(nèi)存地址!關(guān)于內(nèi)存現(xiàn)在不做過多講解,你可以把內(nèi)存地址當(dāng)作一串?dāng)?shù)字符號,內(nèi)存地址就好比每個(gè)人都有一個(gè)身份證號碼一樣!

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

# !usr/bin/env python

# -*- coding:utf-8 _*-

"""

@Author:何以解憂

@Blog(個(gè)人博客地址): shuopython.com

@WeChat Official Account(微信公眾號):猿說python

@Github:www.github.com

 

@File:python_is.py

@Time:2019/10/26:25

 

@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅(jiān)持不懈地積累!

"""

 

a = 5

b = False

c = "hello"

 

print("a內(nèi)存地址:{}".format(id(a)))

print("b內(nèi)存地址:{}".format(id(b)))

print("c內(nèi)存地址:{}".format(id(c)))

輸出結(jié)果:

1

2

3

a內(nèi)存地址:1784504608

b內(nèi)存地址:1784012992

c內(nèi)存地址:2126520897696

 

二.python運(yùn)算符 ==

如果兩個(gè)變量的值相等,那么運(yùn)算符 == 成立,返回True;反之返回False;示例代碼如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

a = 3

b = 3

print(a==b)

 

# 整數(shù)與浮點(diǎn)數(shù)的比較

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)

輸出結(jié)果:

1

2

3

4

True

True

False

False False False True

 

 

三.python運(yùn)算符 is

1.兩個(gè)變量的值相等;

2.變量地址也相同(可以通過內(nèi)置函數(shù)id獲取變量內(nèi)存地址);

如果同時(shí)滿足以上兩個(gè)條件,運(yùn)算符 is 才成立,返回True;反之,不滿足其中任何一個(gè)條件都會返回False;示例代碼如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

a = 333333

b = 333333.0

print(id(a))

print(id(b))

 

print(a is b)

print("***"*20)

 

a = 3

b = 3

print(id(a))

print(id(b))

 

print(a is b)

print("***"*20)

 

a = "hello world"

b = "HELLO WORLD"

c = "hello "

d = "hello world"

print(id(a))

print(id(b))

print(id(c))

print(id(d))

 

print(a is b,a is c,b is c,a is d)

輸出結(jié)果:

1

2

3

4

5

6

7

8

9

10

11

12

13

2039213240016

2039234381168

False

************************************************************

1784504544

1784504544

True

************************************************************

2039217328240

2039217328176

2039217247376

2039217328240

False False False True

看完上述內(nèi)容,你們對python運(yùn)算符is和==的區(qū)別大概了解了嗎?如果想了解更多相關(guān)文章內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道,感謝各位的閱讀!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI