PI = 3.14 #开辟了一个地址存储3.14,且PI引用这个地址存的值
pi = PI #此时pi引用的也是3.14这个值
pi is PI #返回True
p = 3
q = 3
p is q #返回True,因为-5到256这些值预先存储好了,所以直接定义变量的时候就因为相应地址的值就行
#对于字符串类型,调用字符串strA的方法一般不会引起strB的改变,因为strA的方法会指向一个因地址村的字符串
strA = "I love you"
strB = strA
strA = "thank"
strB
Out[25]: 'I love you'
strA
Out[32]: 'lthankothankvthanke'
strB = strA
strA.upper()
Out[34]: 'LTHANKOTHANKVTHANKE'
strB
Out[35]: 'lthankothankvthanke'
#对于字典,集合,列表, 元组类型的数据机构的引用,修改原变量对应地址的值,引用原变量的变量值也变
#字典
aList = {"name":"ding", "sex":"man"}
bList = aList
aList["name"] = "xing"
aList
Out[19]: {'name': 'xing', 'sex': 'man'}
bList
Out[20]: {'name': 'xing', 'sex': 'man'}
# 集合
setA
Out[36]: {'e', 'i', 'n', 'r', 's', 'u'}
setB
Out[37]: {'e', 'i', 'n', 'r', 's', 'u'}
setA.add("a")
setA
Out[39]: {'a', 'e', 'i', 'n', 'r', 's', 'u'}
setB
Out[40]: {'a', 'e', 'i', 'n', 'r', 's', 'u'}
# 列表
listA
Out[46]: ['a', 'e', 'i', 'o', 'u']
listB = listA
listA.append("d")
listB
Out[49]: ['a', 'e', 'i', 'o', 'u', 'd']
#元组一般不可变