[英]Change value inside a dictionary with function
我想通過使用表作為參數將 x 的值更改為 10,但它不會更改值。 我也不想修改 arguments 因此 copy()。 我需要做什么?
def change_x(table):
new_table = table.copy()
new_table['x'] = 10
def main():
table = {
'x': 8,
'y': 10
}
print(table) # prints 8
change_x(table) # change value of x to 10
print(table) # prints 8, wanted 10
.copy()
是對值存儲位置的引用,因此它不會更改值。 您必須擺脫.copy()
以更改值,或者您可以從change_x
function 返回新字典。
def change_x(table):
table['x'] = 10
def main():
table = {
'x': 8,
'y': 10
}
print(table) # prints 8
change_x(table) # change value of x to 10
print(table) # prints 10, wanted 10
或者
def change_x_1(table):
table['x'] = 10
return table
def main():
table = {
'x': 8,
'y': 10
}
print(table) # prints 8
print( change_x_1(table) ) # change value of x to 10 and it returns 10, wanted 10
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.