不管函數傳遞的參數的可變仍是不可變,只要針對參數使用賦值語句,會在函數內部修改局部變量的引用,不會影響到外部變量的引用,而若是傳遞的參數是可變類型,在函數內部使用方法修改了數據的內容,一樣會影響到外部的數據。app
def demo(num, num_list): print("函數內部") num = 99 num_list = [33, 66, 99] print(num, num_list) gl_num = 9 gl_list = [3, 6, 9] demo(gl_num, gl_list) print(gl_num, gl_list)
運行結果:函數
def mutable(num_list): num_list.append(100) print(num_list) gl_list = [1, 2, 3] mutable(gl_list) print(gl_list)
運行結果:spa
不管函數傳遞的參數的可變仍是不可變,只要針對參數使用賦值語句,會在函數內部修改局部變量的引用,不會影響到外部變量的引用,而若是傳遞的參數是可變類型,在函數內部使用方法修改了數據的內容,一樣會影響到外部的數據。code