Re: [問題] 關於list的append方法

作者: uranusjr (←這人是超級笨蛋)   2017-07-19 02:51:36
※ 引述《LessonWang (橘白Cat)》之銘言:
→ zerof: pass by reference. 07/18 13:53
→ uranusjr: 跟 C 沒有關係吧, 也不是 pass by reference 不要亂教.. 07/18 15:44
→ zerof: http://imgur.com/TDlJMiJ ??? 所以是 by value? 07/18 17:45
→ uranusjr: @zerof: By reference 和 by value 的差異不是這樣看的 07/18 21:10
→ uranusjr: 這個議題去 Google 就有一堆資料, 可以試著研究看看 07/18 21:12
→ s860134: 我記得書上是說根據傳入參數 mutable/immutable 來分 07/19 02:03
→ s860134: 當然你說最底層的實做是用 C 一定是指標只來只去拉... 07/19 02:04
→ zerof: 認知就是 by ref, 你要不要貼個參考資料說它不是? 07/19 02:06
→ s860134: stackoverflow 986006 也是討論得亂七八糟XD 07/19 02:21
→ s860134: https://goo.gl/aXGATb 07/19 02:24
啊你的認知就是錯的啊, 我就說 Google 就有一堆資料了你都沒有在聽嘛
https://www.google.com.tw/?q=python+call+by+reference
就看前五個結果好不好
1. https://stackoverflow.com/questions/986006
這個上面也有提到, 直接看 accepted answer (同時也是分數最高)
Arguments are passed by assignment. [...] the parameter passed in is
actually a reference to an object (but the reference is passed by value).
2. https://stackoverflow.com/questions/13299427
[...] while you can't explicitly pass variables by reference in Python [...]
3. http://d.pr/KbZ2AS
Is Python call-by-value or call-by-reference? Neither.
4. http://www.python-course.eu/passing_arguments.php
The authors who call the mechanism call-by-value and those who call it
call-by-reference are stretching the definitions until they fit. Correctly
speaking, Python uses a mechanism, which is known as "Call-by-Object",
sometimes also called "Call by Object Reference" or "Call by Sharing".
5. http://d.pr/GpSU86
Unfortunately, Python is "pass-by-object-reference", of which it is
often said:
"Object references are passed by value."
好啦反正眾說紛紜大家都在發明自己的名詞
但是上面好像是有個共通點就是所有人都一致同意 call/pass by reference 是錯的
大guy4這樣
作者: zerof (貓橘毛發呆雕像)   2016-07-18 13:53:00
pass by reference.
作者: uranusjr (←這人是超級笨蛋)   2016-07-18 15:44:00
跟 C 沒有關係吧, 也不是 pass by reference 不要亂教..
作者: zerof (貓橘毛發呆雕像)   2016-07-18 17:45:00
http://imgur.com/TDlJMiJ ??? 所以是 by value?
作者: uranusjr (←這人是超級笨蛋)   2016-07-18 21:10:00
@zerof: By reference 和 by value 的差異不是這樣看的這個議題去 Google 就有一堆資料, 可以試著研究看看
作者: s860134 (s860134)   2016-07-19 02:03:00
我記得書上是說根據傳入參數 mutable/immutable 來分當然你說最底層的實做是用 C 一定是指標只來只去拉...
作者: zerof (貓橘毛發呆雕像)   2016-07-19 02:06:00
認知就是 by ref, 你要不要貼個參考資料說它不是?
作者: s860134 (s860134)   2016-07-19 02:21:00
stackoverflow 986006 也是討論得亂七八糟XDhttps://goo.gl/aXGATb
作者: brightwish (密碼同帳號)   2017-07-19 07:24:00
python宣告變數其實是把物件參照(變數名稱)指向物件名稱(值) 所以是呼叫物件參照
作者: LessonWang (橘白Cat)   2017-07-19 08:26:00
真的眾說紛紜 ...
作者: Yshuan (倚絃)   2017-07-19 16:36:00
開發角度上 預設變數都是ref來去預防side effect為佳任何assinment都要有心理預期 上保險不會虧
作者: akasan (KITO)   2017-11-02 00:43:00
valgrind, 但 windowns 版的沒試過XDlinux 上那真的是不二選擇了
作者: Linux (Windows)   2017-11-02 00:45:00
我是用 Windows ....>"<

Links booklink

Contact Us: admin [ a t ] ucptt.com