为什么python岗位这么少_当面试关于python岗位时,这5个重要的点须注意了

汇总了很多的python的基础教学和学习方向,今天小编想做一期当面试python岗位时,该注意的那些点,希望大家会喜欢,记得点赞转发哦!

1.“猴子补丁”(monkey patching)指的是什么?这种做法好吗?

“猴子补丁”就是指,在函数或对象已经定义之后,再去改变它们的行为。

举个例子:

import datetime

datetime.datetime.now = lambda: datetime.datetime(2012, 12, 12)

大部分情况下,这是种很不好的做法 - 因为函数在代码库中的行为最好是都保持一致。打“猴子补丁”的原因可能是为了测试。mock包对实现这个目的很有帮助,如果你没读过mock模块的话,真的值得花时间读一读。这个模块非常有用。

2.你如何管理不同版本的代码?

当被问到这个问题的时候,你应该要表现得很兴奋,甚至告诉他们你是如何使用Git(或是其他你最喜欢的工具)追踪自己和奶奶的书信往来。我偏向于使用Git作为版本控制系统(VCS),但还有其他的选择,比如subversion(SVN)。

3.到底什么是Python?

为什么会问及的这个问题了,因为如果你应聘的是一个Python开发岗位,你就应该知道这是门什么样的语言,以及它为什么这么酷。以及它哪里不好都是要表达出来!

4.下面这些是什么意思:@classmethod, @staticmethod, @property?

这个问题题,其实可以这样回答,比如:这些都是装饰器(decorator)。装饰器是一种特殊的函数,要么接受函数作为输入参数,并返回一个函数,要么接受一个类作为输入参数,并返回一个类。@标记是语法糖(syntactic sugar),可以让你以简单易读的方式装饰目标对象。

5.简要描述Python的垃圾回收机制(garbage collection)

这种问题还是比较回答的,主要还是注意提到下面这几个点:

1.偶尔也会出现引用循环(reference cycle)。垃圾回收器会定时寻找这个循环,并将其回收。举个例子,假设有两个对象o1和o2,而且符合o1.x == o2和o2.x == o1这两个条件。如果o1和o2没有其他代码引用,那么它们就不应该继续存在。但它们的引用计数都是1。

2.Python中使用了某些启发式算法(heuristics)来加速垃圾回收。例如,越晚创建的对象更有可能被回收。对象被创建之后,垃圾回收器会分配它们所属的代(generation)。每个对象都会被分配一个代,而被分配更年轻代的对象是优先被处理的。

你可能感兴趣的:(为什么python岗位这么少)