概述
Python是一种非常流行的编程语言。随着近年来机器学习、云计算等技术的发展,Python对工作的要求越来越高下面,我从Python面试官那里收集了10个常见问题,供您参考和研究。类
继承了
,并具有以下代码:
如何调用类a的show方法
方法如下:
__ class__方法指向一个类对象,只给它分配类型a,然后调用方法show,但是在用完时记得修改它
方法对象
问题:要运行以下代码,需要添加哪些代码?
答案:为了能够直接调用对象实例,有必要实现__call__方法
new和init
。以下代码输入是什么?
答案:
使用__new__方法来决定返回哪个对象,即在创建对象之前可用于设计模式的单个实例工厂模式__init__是创建对象的调用下面的代码输出什么?
答案:
全局和局部变量
这段代码输出什么?
答案:
num不是全局变量,因此每个函数都有自己的num副本。如果要修改num,必须用global关键字声明它例如,下面的
交换两个变量的值
一行代码交换两个变量的值
答案:
默认方法
下面的代码
方法fn1/fn2/fn3没有定义,添加代码,没有定义的方法调用我的默认函数。上述代码应该输出
答案:
方法__getattr__仅在没有定义的方法调用时调用当fn1方法传入参数时,为了兼容性,我们可以在我的默认方法中添加一个*args不定参数
包管理
包有三个模块,mod1.py、mod2.py、mod3.py,但是如何确保在使用demopack import *时只导入mod1和mod3
答案:添加__init__。py文件,并添加:
闭包
来编写函数、接收整数参数n并返回函数。函数是将函数参数和n相乘并返回结果
答案:
性能
分辨率以下代码的速度较慢
答案:python str是一个不可变的对象,每次迭代都会生成一个新的str对象来存储新字符串,数量越大,创建的str对象越多,内存消耗就越大