Python部落(python.freelycode.com)组织翻译,禁止转载,欢迎转发。
目录为什么Python没有指针?
Python中的对象
不可变对象和可变对象
了解变量C的变量
Python的名称
关于Python的预实现对象的注释
在Python中模拟指针使用可变类型作为指针
使用Python对象
使用ctypes模块实现的真正指针
总结
如果您曾经使用过像C或者C++这样的低级语言,那么您可能听说过指针。指针允许您在部分代码上取得更高的效率。但它们也会给初学者带来困惑,而且还可能导致各种内存管理错误,即使对于专家来说也会如此。那么它们在Python的哪里?您该如何在Python中模拟指针?
指针在C和C++中广泛应用。从本质上来说,它们是保存另一个变量内存地址的变量。有关指针的复习,您可以考虑看一下这篇关于C语言指针的概述。
通过本文,您会更好地理解Python的对象模型,同时明白为什么Python中不存在真正的指针。对于需要模仿指针行为的情况,您将学习到如何在没有内存管理噩梦的情况下在Python中模拟指针。
在本文中,您将
· 了解为什么Python中的指针不存在
· 探索C变量和Python名称之间的区别
· 在Python中模拟指针
· 使用ctypes实现真正的指针
注意:在本文中,“Python”会涉及C中Python的参考实现,也称作CPython。当文章在讨论该语言的一些内部结构时,这些注释适用于CPyt