代碼如下: def test(x,a): x=9.9 a[1]=99 return x=0.1 a=[1,2,3] test(x,a) print("x=",x) print("a=",a) # 思考:print輸出x和a值如何,?說明什么,? 運行結(jié)果如下: x= 0.1 a= [1, 99, 3] 主模塊中,調(diào)用test函數(shù),,其中修改了x和a[1]值,,但是調(diào)用函數(shù)后只有a值修改、但x值則保持不變,,原因在于前者(x,,數(shù)字)屬于可變數(shù)據(jù)類型、后者(a,,列表)則屬于不變數(shù)據(jù)類型,,函數(shù)調(diào)用時分別采用地址傳遞和值傳遞。 |
|