- The Python Apprentice
- Robert Smallshire Austin Bingham
- 171字
- 2021-07-02 22:17:05
Python return semantics
Python's return statement uses the same pass-by-object-reference semantics as function arguments. When you return an object from a function in Python, what you're really doing is passing an object reference back to the caller. If the caller assigns the return value to a reference, they are doing nothing more than assigning a new reference to the returned object. This uses the exact same semantics and mechanics that we saw with explicit reference assignment and argument passing.
We can demonstrate this by writing a function which simply returns its only argument:
>>> def f(d):
... return d
...
If we create an object such as a list and pass it through this simple function, we see that it returns the very same object that we passed in:
>>> c = [6, 10, 16]
>>> e = f(c)
>>> c is e
True
Remember that is only returns True when two names refer to the exact same objects, so example this shows that no copies of the list were made.
- Extending Jenkins
- 兩周自制腳本語言
- 大學計算機基礎實驗教程
- 簡單高效LATEX
- Java高手真經(高級編程卷):Java Web高級開發技術
- Internet of Things with Intel Galileo
- Python機器學習經典實例
- SAP BusinessObjects Dashboards 4.1 Cookbook
- Django 3.0入門與實踐
- 深入分析GCC
- 面向對象程序設計及C++(第3版)
- 分布式數據庫HBase案例教程
- Google Maps JavaScript API Cookbook
- Building Microservices with Go
- MonoTouch應用開發實踐指南:使用C#和.NET開發iOS應用