Python可变类型与不可变类型

Posted ShenLiang2025

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python可变类型与不可变类型相关的知识,希望对你有一定的参考价值。

Python不可变类型与可变类型案例

# int和string 为不可变变量
#1 不可变变量验证
inta = 100
intb = 100
print("inta和intb是否是一样一个对象?",str(inta is intb))
print("inta和intb的地址分别是:".format(0,1),str(id(inta)),str(id(intb)))

#2 列表可变,元组不可变
a =[3,2,1]
b = (6,7,8)
# 在现有的列表基础上加一个元素"5"
def listadd5(l):
    l+=[5]

# 在现有的"元组"基础上加一个元素"5"
def tupleadd5(r):
    r+=(5,)
    return r

def yoda(prologue, sentence):
    sentence.reverse()
    prologue += " ".join(sentence)
    return prologue


if __name__ == '__main__':
    print(a,id(a))
    listadd5(a)
    print(a,id(a))
    listadd5(a)
    print(a,id(a))
    #list加入两次"5"后对象id还是一样的,即在原对象上操作
    print("*******分隔符*****")
    print(b, id(b))
    tupleadd5(b) #原对象b未变化
    print(b, id(b))
    #将扩充的对象b赋值给c,及复制
    c= tupleadd5(b)
    print(c,id(c))

    focused = ["You must", "stay focused"]
    saying = "Yoda said: "
    print(type(focused))
    yoda_sentence = yoda(saying, focused)
    print(yoda(saying, focused))
    print(yoda(saying, focused))
    print("###",yoda_sentence)
    '''
    1、字典中的 key 是不可变的类型
    2、int str tuple  是值类型是不可变的
    3、List set dict  是引用类型是可变的
    '''
    

 

以上是关于Python可变类型与不可变类型的主要内容,如果未能解决你的问题,请参考以下文章

python的可变与不可变数据类型

Python的可变类型与不可变类型

Python数据类型的可变与不可变

python的可变与不可变数据类型

python可变类型与不可变类型

Python可变类型与不可变类型