加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 为什么numpy数组的元素与它们自身不一样?

发布时间:2020-12-20 11:54:04 所属栏目:Python 来源:网络整理
导读:我该如何解释这些的最后一行? a = 1 a is aTrue a = [1,2,3] a is aTrue a = np.zeros(3) aarray([ 0.,0.,0.]) a is aTrue a[0] is a[0]False 我一直认为一切都至少“是”那件事本身! 解决方法 NumPy不将数组元素存储为Python对象.如果您尝试访问单个元素,
我该如何解释这些的最后一行?

>>> a = 1
>>> a is a
True
>>> a = [1,2,3]
>>> a is a
True
>>> a = np.zeros(3)
>>> a
array([ 0.,0.,0.])
>>> a is a
True
>>> a[0] is a[0]
False

我一直认为一切都至少“是”那件事本身!

解决方法

NumPy不将数组元素存储为Python对象.如果您尝试访问单个元素,NumPy必须创建一个新的包装器对象来表示该元素,并且每次访问该元素时都必须这样做.两次访问[0]的包装器对象是不同的对象,因此[0]是[0]返回False.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读