python输出变量地址_Python——变量

笑虎:千行代码入门Python​zhuanlan.zhihu.com函数的参数​www.liaoxuefeng.comPython学习之变量的作用域 - fireporsche - 博客园​www.cnblogs.com1.Python数据类型:Python数据类型有两种:哈希类型、不可哈希类型,这是因为hash函数的结果和变量的地址有关。哈希类型,即在原地不能改变的变量类型,不可变类型。可利用h...
摘要由CSDN通过智能技术生成

笑虎:千行代码入门Python​zhuanlan.zhihu.com

函数的参数​www.liaoxuefeng.com

Python学习之变量的作用域 - fireporsche - 博客园​www.cnblogs.com

1.Python数据类型:

Python数据类型有两种:哈希类型、不可哈希类型,这是因为hash函数的结果和变量的地址有关。

哈希类型,即在原地不能改变的变量类型,不可变类型。可利用hash函数查看其hash值,也可以作为字典的key。

"数字类型:int, float, decimal.Decimal, fractions.Fraction, complex"

"字符串类型:str, bytes"

"元组:tuple"

"冻结集合:frozenset"

"布尔类型:True, False"

"None"

不可hash类型:原地可变类型:list、dict和set。它们不可以作为字典的key。

2.在python中赋值符号=

在python中 a=b=0,其实a是对b的引用,即a,b指向同一块内存空间:可以看到a和b的地址一样,这里可能看不出来a,b与c的区别

>>> a=b=0

>>> id(a)

140726709150320

>>> id(b)

140726709150320

>>> c=0

>>> id(c)

140726709150320

对于不可哈希数值可以看到c与a,b的id不一样

>>> a=b=[]

>>> c=[]

>>> id(a)

2454206440072

>>> id(b)

2454206440072

>>> id(c)

2454206440136

更改a的值,对于常量,a的指向改变,而对于不可hash类型,指向不变:

>>> a=b=0

>>> a=1

>>> a=b=0

>>> id(a)

140726709150320

>>> id(b)

140726709150320

>>

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值