Re: [閒聊] python大師請進

作者: lturtsamuel (港都都教授)   2022-06-29 00:51:04
※ 引述《surimodo (搖滾少女!! 活力棉花糖!!)》之銘言:
: 找半天也看不出哪裡錯
: 結果是傳值為啥變成傳址= =
: 原來python有這麼騷的操作
: A = json.load(f)
: B = A
: 本來一個要當參考值讀取就沒要變
: 一個要把變動重新寫入檔案
: 結果 我動A
: B也跟著一起動了
: wtf
: 分開讀取不用 B =A
: 問題都解決了
這就是
非本科系寫程式撞上第一道難題的現場嗎
沒寫過c語言的人能夠越過call by reference v.s. call by value之壁嗎
姆咪咪咪
半路轉碼是有極限的 我不當碼農了 :((
作者: surimodo (好吃棉花糖)   2022-06-29 00:52:00
大師99我
作者: lturtsamuel (港都都教授)   2022-06-29 00:53:00
去看c與指針
作者: surimodo (好吃棉花糖)   2022-06-29 00:53:00
為啥B不是複製一份A 而是跟A共用資料:(
作者: lturtsamuel (港都都教授)   2022-06-29 00:54:00
python裡的class就是這樣處理的你想像 假如你是python的語言設計者 你要怎麼幫使用者決定該複製一個物件到多深?只有兩種可能 完全深複製 或是完全淺複製 py就選了淺複製 這樣
作者: ILoveElsa (S級18位 梓喵醬油瓶)   2022-06-29 00:55:00
所以說pointer=神 沒這些雞雞歪歪的
作者: lturtsamuel (港都都教授)   2022-06-29 00:56:00
因為深複製可以讓使用者自己想辦法實作 淺複製沒辦法一定要在語言層面支援

Links booklink

Contact Us: admin [ a t ] ucptt.com