Python 官方文档:入门教程 => 点击学习
一、格式 变量 = 对象 二、简述 python为动态解释性语言,在赋值操作时,并不需要像静态编译类型语言C、c++或Java一样,在使用变量前,需声明变量的类型。在Python中,类型是在运行过程中自动决定的,而不是通过代码声
变量 = 对象
a = 3
步骤说明:
a = 3
模型 :
a = 1
a = 'python'
a = 1.2
a = 3
b = a
a 指向对象3; b = a
,此赋值操作,b也指向3。
例一模型:
a = 3
b = a
a = 'spam'
a 重新指向另一个对象。
例二模型:
==
指值相等
is
指地址相等,即指引用相等。
lst1 = [1, 2, 3]
lst2 = lst1
lst3 = [1, 2, 3]
print(lst1, lst2, lst3)
# 执行结果
[1, 2, 3] [1, 2, 3] [1, 2, 3] # 值相等
lst2[0] = 10
print(lst1, lst2, lst3)
# 执行结果
[10, 2, 3] [10, 2, 3] [1, 2, 3] # lst1和lst2发生变化
lst1 = [1, 2, 3]
lst2 = lst1
lst3 = [1, 2, 3]
print(lst1 == lst2)
print(lst1 is lst2)
print(lst1 == lst3)
print(lst1 is lst3)
# 执行结果
True
True
True
False
说明,lst1和lst2指向同一个对象。而lst3则执行另一个对象。两个对象只是值相等。
a = 1
b = a
c = 1
print(a == b)
print(a is b)
print(a == c)
print(a is c)
# 执行结果
True
True
True
True
这里a、b、c都指向同一个对象。
这是因为小的整数和字符串被缓存并复用了,所以is指明a和c是引用了一个相同的对象。
例如
a = 1
a = 'python'
这里的 1 并没有被直接回收,虽然它的计数减一,但是在系统代码中却被大量引用。查看引用计数如下
import sys
print(sys.getrefcount(1))
# 执行结果
4013
注: 知识点参考了<<Python 学习手册 第四版>>
--结束END--
本文标题: Python3学习笔记:Python中的
本文链接: https://www.lsjlt.com/news/184171.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0