ITPub博客

首页 > 应用开发 > Python > Python工程师求职必知的经典面试题

Python工程师求职必知的经典面试题

原创 Python 作者:千锋教育qyf 时间:2021-05-21 17:44:39 0 删除 编辑

  最近几年, 学习Python语言的同学越来越多,学成之后大家对于后期的面试都遇到了很多难题,小编这次为大家整理了一份关于Python工程师求职必知的经典面试题!希望能够帮助到正在找Python工作的同学们。

面试技巧

  Python工程师求职必知的经典面试题:

  1、多线程使用Python是个好主意吗?列出一些方法可以让一些Python代码以并行方式运行。

  答:Python不允许真正意义上的多线程。它有一个多线程包,但如果你想使用多线程来加速你的代码,那么使用它通常不是一个好主意。Python有一个名为全局解释器锁(Global Interpreter Lock(GIL))的结构。GIL确保每次只能执行一个“线程”。一个线程获取GIL,做一点工作,然后将GIL传递到下一个线程。这种情况发生的很快,因此对于人眼看来,你的线程似乎是并行运行的,但它们实际上只是轮流使用相同的CPU核心。所有这些GIL传递都增加了运行的内存。这意味着如果你想让代码运行得更快,那么使用线程包通常不是一个好主意。

  使用Python的线程包也是有原因的。如果你想同时运行一些东西,并且效率不是一个问题,那么它就完全没问题了。或者,如果你正在运行需要等待某些事情的代码(例如某些IO),那么它可能会很有意义。但是线程库不会让你使用额外的CPU核心。

  多线程可以外包到操作系统(通过多处理),一些调用Python代码的外部应用程序(例如,Spark或Hadoop),或者Python代码调用的一些代码例如:你可以使用你的Python代码调用一个C函数来完成昂贵的多线程事务。

  2、这段代码输出了什么:

  def f(x,l=[]):for i in range(x):l.append(i*i)print(l) f(2)f(3,[3,2,1])f(3)

  答:[0, 1][3, 2, 1, 0, 1, 4][0, 1, 0, 1, 4]

  3、如何在Python中管理内存?

  Python中的内存管理由Python私有堆空间管理。所有Python对象和数据结构都位于私有堆中。程序员无权访问此私有堆。Python解释器负责处理这个问题。Python对象的堆空间分配由Python的内存管理器完成。核心API提供了一些程序员编写代码的工具Python还有一个内置的垃圾收集器,它可以回收所有未使用的内存,并使其可用于堆空间。

  4、range&xrange有什么区别?

  在大多数情况下,xrange和range在功能方面完全相同。它们都提供了一种生成整数列表的方法,唯一的区别是range返回一个Python列表对象,x range返回一个xrange对象。

  这就表示xrange实际上在运行时并不是生成静态列表。它使用称为yielding的特殊技术根据需要创建值。该技术与一种称为生成器的对象一起使用。因此如果你有一个非常巨大的列表,那么就要考虑xrange。

  5、Python中help()和dir()函数的用法是什么?

  Help()和dir()这两个函数都可以从Python解释器直接访问,并用于查看内置函数的合并转储。

  help()函数:help()函数用于显示文档字符串,还可以查看与模块,关键字,属性等相关的使用信息。

  dir()函数:dir()函数用于显示定义的符号。

  6、NumPy中有哪些操作Python列表的函数?

  Python的列表是高效的通用容器。它们支持(相当)有效的插入,删除,追加和连接,Python的列表推导使它们易于构造和操作。

  它们有一定的局限性:它们不支持像素化加法和乘法等“向量化”操作,并且它们可以包含不同类型的对象这一事实意味着Python必须存储每个元素的类型信息,并且必须执行类型调度代码在对每个元素进行操作时。

  NumPy不仅效率更高; 它也更方便。你可以免费获得大量的向量和矩阵运算,这有时可以避免不必要的工作。它们也得到有效实施。

  NumPy数组更快,你可以使用NumPy,FFT,卷积,快速搜索,基本统计,线性代数,直方图等内置。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69996644/viewspace-2773401/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
千锋教育隶属于北京千锋互联科技有限公司,以“初心至善,匠心育人”为核心价值观,致力于打造职业教育全产业链人才服务平台,公司总部位于北京,拥有全国一体化就业保障服务,成为学员信赖的职业教育品牌。 每年有数百万名学员受益于千锋组织的技术研讨会、技术培训课、网络公开课及免费教学视频。

注册时间:2021-03-17

  • 博文量
    527
  • 访问量
    204782