面试教员的问题_2019年10个Python面试常问的问题

面试教员的问题

概况

Python是一种非常受欢迎的编程语言,随着近年来机器学习、云计算等技术的发展,Python的定位需求越来越高。 以下,收集Python面试官经常听到的10个问题,作为参考来学习吧。

类继承

这些代码包括

面试教员的问题

如何调用a类的show方法。

方法如下:

__ class__方法指向类对象,仅指定类型a并调用方法show,但不记得已经更改。

方法对象

问:为了执行下面的代码,需要添加哪些代码?

面试教员的问题

答案:必须实现__call__方法,才能直接调用目标实例

面试教员的问题

new和init

下面的代码输入什么?

面试教员的问题

答案:

面试教员的问题

使用__new__方法,您可以返回到该对象,也就是说,在创建对象之前,它可以用于设计模式的示例和工厂模式。 __init__被调用以创建对象。

生成Python list和dict

下面的代码输出什么?

面试教员的问题

答案:

面试教员的问题

全局变量和局部变量

下面的代码输出什么?

面试教员的问题

答案:

由于num不是全局变量,因此每个函数必须获取自己的num副本,并且在修改num时必须使用global关键字进行声明。 例如如下所示

面试教员的问题0

交换两个变量的值

一行代码交换两个变量值

答案:

默认方法

下面的代码

面试教员的问题

方法fn1/fn2/fn3未定义,即使添加了代码,未定义的方法也必须调用mydefault函数并输出上述代码

答案:

面试教员的问题

方法__getattr__只有在没有定义的方法调用时才被调用。 当fn1方法传递参数时,可以将*args不定参数添加到mydefault方法中以使其兼容。

面试教员的问题

软件包管理

一个包中有三个模块mod1.py,mod2.py,mod3.py,但如果使用from demopack import *导入模块,则如何确保仅导入mod1和mod3。

回答:添加__init__.py文件并将其添加到文件中

闭包

写函数,接受整数参数n,返回函数。 函数的功能是将函数的参数与n相乘以返回结果。

答案:

面试教员的问题

性能

分析以下代码较慢的位置

面试教员的问题

答: python的str是不变的对象,每次迭代都会生成新的str对象,并存储新的字符串,num越大,所创建的str对象越多,内存消耗越大。

大家都在看

相关专题