首页 > 编程语言 >python面试-理论面试题

python面试-理论面试题

时间:2022-10-22 19:34:02浏览次数:59  
标签:面试题 getrefcount 变量 指向 python 面试 对象 引用 类型

1.变量与值在内存中的关系

变量通过变量指针,引用对象变量指针指向具体对象的内存空间,取对象的值。

1. 对象,类型已知,每个对象都包含一个头部信息(头部信息:类型标识符和引用计数器)
#注意:变量名没有类型,类型属于对象(因为变量引用对象,所以类型随对象),变量引用什么类型的对象,变量就是什么类型的。

2. 在Python中,每个对象都有指向该对象的引用总数---引用计数。可以使用sys.getrefcount()查看该数值。
#注意: 当使用某个引用作为参数,传递给getrefcount()时,参数实际上创建了一个临时的引用。因此,getrefcount()所得到的结果,会比期望的多1。

3. 当我们销毁一个变量时,该变量指向的对象的引用次数将减少一次。

4. 当Python的某个对象的引用计数降为0时,说明没有任何引用指向该对象,该对象就成为要被回收的垃圾。

 

标签:面试题,getrefcount,变量,指向,python,面试,对象,引用,类型
From: https://www.cnblogs.com/zwx901323/p/16817108.html

相关文章

  • 【Python】第3章-18 统计一行文本的单词个数
    随机输入一个字符串,把最左边的10个不重复的英文字母(不区分大小写)挑选出来。如没有10个英文字母,显示信息“notfound”输入格式:在一行中输入字符串输出格式:在一行中......
  • 【Python】第3章-16 删除重复字符
    本题要求编写程序,将给定字符串去掉重复的字符后,按照字符ASCII码顺序从小到大排序后输出。输入格式:输入是一个以回车结束的非空字符串(少于80个字符)。输出格式:输出去重排......
  • Python教程Day08-元组
    元组一、应用场景思考:如果想要存储多个数据,但是这些数据是不能修改的数据,怎么做?答:列表?列表可以一次性存储多个数据,但是列表中的数据允许更改。num_list=[10,20,30]num_......
  • Python教程Day09-字典
    字典一、应用场景​​思考1​​:如果有多个数据,例如:'Tom','男',20,如何快速存储?答:列表list1=['Tom','男',20]​​思考2​​:如何查找到数据'Tom'?答:查找到下标为0的数据......
  • Python解算多项式
    fromsympyimport*#定义符号变量a,b,c,a1,a2,a3,b1,b2,R,x=symbols("a,b,c,a1,a2,a3,b1,b2,R,x")#公式a=((-(4*R**2*(cos(b1))**2*(sin(b1)*(pow((x**2)*sin(a......
  • Two values from one input in python?
    Twovaluesfromoneinputinpython?ThisissomewhatofasimplequestionandIhatetoaskithere,butIcan'tseemthefindtheansweranywhereelse:isi......
  • 【python】高阶函数
    什么是高阶函数?只要满足下面的任意一个条件就是高阶函数1、一个函数的函数名作为参数传给另外一个函数2、一个函数返回值(return)为另外一个函数(返回为自己,则为递归)......
  • Python列表
     目录导航1.创建和输出列表2.修改列表元素3.在列表中添加元素4.从列表中删除元素5.列表的排序6.列表长度  1.创建和输出列表双引......
  • How to get the ASCII value of a character Python
    HowtogettheASCIIvalueofacharacter 回答1Fromhere:Thefunctionord()getstheintvalueofthechar.Andincaseyouwanttoconvertbackafterp......
  • Python教程Day07-集合
    集合一、创建集合创建集合使用​​{}​​​或​​set()​​​,但是如果要创建空集合只能使用​​set()​​​,因为​​{}​​用来创建空字典。s1={10,20,30,40,50}pri......