LinkedIn Python 资格评估答案31 Mar 2025 | 19 分钟阅读 大家好,在本教程中,您将了解 LinkedIn 资格评估 Python 测试的所有答案。 正确答案以蓝色突出显示。请勿仅为复制粘贴和完成评估而使用这些答案。尝试理解 Python 编程语言的概念;这样,您就不必寻找答案了。 您只需要自己解决它_var。Python 编程语言的所有概念都可以在本博客上找到。 那么,让我们开始这个教程吧? LinkedIn Python 问题与答案1) 定义抽象类。- 抽象类是任何可以从中实例化对象的类的名称。
- 从抽象类实例化对象时,必须重新实现抽象类。
- 抽象类必须继承自具体类。
- 抽象类仅用于允许其他“具体”类继承自抽象类。
2) 在列表上使用 any() 函数会发生什么?- any() 函数将随机返回列表中的任何内容。
- 如果列表中的任何元素评估为 True,any() 函数将返回 True。否则,它返回 False。
- any() 函数的参数是列表(要搜索的)和要检查的元素。如果列表中的“任何”元素与要检查的元素匹配,则该函数返回 True。
- any() 函数返回一个布尔值,回答了“此列表中是否有任何元素?”这个问题。
3) 如果二叉树未正确调整,它会退化成什么数据结构?
4) 关于静态方法的哪个陈述是正确的?- 静态方法之所以称为静态,是因为它们总是返回 None。
- 静态方法可以绑定到类或类的实例。
- 静态方法通常用作实用程序或辅助方法,因为它们无法访问或修改类状态。
- 静态方法可以访问和修改类或类的实例的状态。
5) 定义属性?- 属性是 if/else 语句的长格式版本,用于测试对象之间的通信。
- 属性是一种为类或类的实例保存数据或描述状态的方法。
- 属性是描述类特性的字符串。
- 函数参数被称为类方法和实例方法的“属性”。
解释属性在类下定义,参数在函数下传递。参数通常指的是形参,而属性是类或类实例的构造函数。
6) 你可以使用哪个内置列表方法从列表中删除元素?- delete() 方法
- pop(my_list)
- del(my_list)
- .pop() 方法
7) Python sys 库最常见的用途是什么?- 捕获在文件运行时提供的命令行参数。
- 连接不同的系统,例如连接 Web 前端、API 服务、数据库和移动应用程序。
- 获取虚拟机环境中所有包和库的快照。
- 在虚拟机环境中检查 Python 环境的健康状况。
8) 通过使用键访问字典中的值的时间复杂度是多少?- O(n) 称为线性时间,O(n^2) 称为二次时间。
- O(log n),也称为对数时间。
- O(1),也称为常数时间。
9) 定义一个名为 Game 的类,该类继承自名为 LogicGame 的父类,正确的语法是什么?- class Game(LogicGame): pass
- def Game(LogicGame): pass
- def Game.LogicGame(): pass
- class Game.LogicGame(): pass
10) 哪个内置 Python 数据类型通常用于表示堆栈?
11) 在定义或调用实例方法时,“self_var”关键字的作用是什么?- self_var 意味着无需将其他参数传递给方法。
- self_var 方法没有实际作用;它只是 Python 为与其他编程语言保持兼容而保留的遗留软件工程术语。
- self_var 指的是调用了其方法的那一实例。
- self_var 指的是用于创建使用 self_var 的对象的继承类。
12) 以下哪项不是命名元组的特征?- 您可以为每个命名元组成员分配一个名称,并像访问字典中的键一样进行引用。
- 命名元组对象的每个成员都可以像普通元组一样直接索引。
- 命名元组与普通元组一样节省内存。
- 使用命名元组不需要导入,因为它们存在于标准库中。
13) 什么是实例方法?- 实例方法可以修改实例或其父类本身的状态。
- 实例方法包含与实例相关的数据。
- 实例方法是任何不接受参数的类方法。
- 实例方法是属于类的自定义函数,但它必须返回 None。
14) 哪个陈述不描述封装的面向对象编程概念?- 它保护数据免受外部干扰。
- 父类被封装,父类中的任何数据都不会传递给子类。
- 它将数据和可以操作该数据的方法保持在一个地方。
- 它只允许通过方法修改数据。
15) 内置的 map() 函数做什么?- 它将可迭代对象中的多个值映射到一个值。
- 它将一个函数应用于可迭代对象中的所有元素,并返回该函数的值。
- 它将复杂值类型转换为更简单值类型。
- 它在不同可迭代对象的两个不同元素之间创建映射。
16) 如果你没有显式地从函数返回一个值,会发生什么?- 如果你不返回值,函数将返回一个 RuntimeError。
- 如果缺少 return 关键字,函数将返回 None。
- 如果缺少 return 关键字,函数将返回 True。
- 函数将进入无限循环,因为它不知道何时停止执行其代码。
17) pass 语句在 Python 中的目的是什么?- 用于跳过生成器的 yield 语句并返回 None 值。
- 它是一个无效操作,主要用作函数、类等的占位符。
- 它用于将控制权从一个语句块传递到另一个语句块。
- 它用于跳过 for 或 while 循环的其余部分并返回到循环的开头。
18) 哪个术语描述了可以传递到函数中的项?
19) 哪个集合类型用于将值与唯一键关联?
20) for 循环何时停止迭代?- 当它遇到无限循环时
- 当它遇到包含 break 关键字的 if/else 语句时
- 当它已经遍历完正在处理的可迭代对象中的所有元素,或遇到 break 关键字时
- 当循环的运行时间超过 O(n^2) 时
21) 假设节点位于单链表中,在单链表中搜索特定节点的运行时复杂度是多少?- 运行时为 O(n),因为在最坏情况下,您要查找的节点是最后一个节点,并且必须访问链表中的每个节点。
- 运行时为 O(nk),其中 n 代表节点数,k 代表访问内存中每个节点所需的时间。
- 除非知道单链表中的节点数,否则无法确定运行时。
- 运行时为 O(1),因为您可以直接索引到单链表中的节点。
22) 使用 all() 内置函数处理列表时会发生什么?- all() 函数返回一个布尔值,回答了“此列表中的元素是否相同?”这个问题。
- 如果列表中的所有元素都可以转换为字符串,则 all() 函数返回 True。否则,它返回 False。
- all() 函数将返回列表中的所有值。
- 如果列表中的所有元素都评估为 True,则 all() 函数返回 True。否则,它返回 False。
23) set 和 list 之间的关键区别是什么?- set 是有序的项集合。list 是无序的非唯一项集合。
- 可以从列表中检索元素,但不能从 set 中检索。
- set 是有序的非唯一项集合。list 是无序的唯一项集合。
- set 是无序的唯一项集合。list 是有序的非唯一项集合。
24) 假设 Game 类继承自两个父类:Table game 和 LogicGame。哪个陈述验证了 Game 类对象的方法?- 在初始化对象时,对象不继承任何父类的方法。
- 在初始化对象时,对象将继承方法最多的那个父类的方法。
- 在初始化对象时,构造函数必须指定要继承方法的父类。
- Game 类的实例将继承 Table game 和 LogicGame 类所拥有的任何内容。
25) 调用命名元组(namedtuple)处理集合类型会返回什么?- 一个具有可迭代边界字段的常规对象类
- 一个具有不可迭代命名字段的常规对象类
- 一个具有不可迭代边界字段的元组子类
- 一个具有可迭代命名字段的元组子类
26) 类中的 __init__() 方法做什么?- __init__ 方法使类相互了解,即使在一个代码文件中定义了多个类。
- __init__ 方法包含是为了与 Python 3 向后兼容 Python 2;但它永远不会在 Python 3 中使用。
- __init__ 方法是一个构造函数方法,在每次从类创建新对象时自动调用。它设置新对象的初始状态。
- __init__ 方法初始化您可能在文件顶部包含的所有导入。
27) “空间复杂度”是什么意思?- 在不到一分钟的时间内运行您的代码所需的微秒数。
- 代码文件中包含的代码行数。
- 作为数据大小的函数占用的内存量。
- 1 GB 内存可以容纳的代码副本数量。
28) 在定义或调用对象实例上的方法时,self_var 关键字的作用是什么?- self_var 指的是用于创建使用 self_var 的对象的继承类。
- self_var 方法没有实际作用。它只是 Python 为与其他编程语言保持兼容而保留的遗留软件工程术语。
- self_var 意味着无需将其他参数传递给方法。
- self_var 指的是调用了其方法的那一实例。
29) 关于类方法哪个陈述是正确的?- 类方法是属于类的常规函数,但它必须返回 None。
- 类方法可以修改类本身的状态,但不能直接修改从该类继承的实例的状态。
- 类方法类似于常规函数,但类方法不接受参数。
- 类方法包含特定类的所有数据。
30) 函数具有线性运行时意味着什么?- 您在代码中没有使用许多高级计算机编程概念。
- 您的代码的编写难度级别非常高。
- 您的程序运行时间将不到半分钟。
- 函数完成所需的时间随输入大小的增加而线性增加。
31) 定义函数的正确方法是什么?- def getMaxNum(list_of_nums): # function body goes here
- func get_max_num(list_of_nums): # function body goes here
- func getMaxNum(list_of_nums): # function body goes here
- def get_max_num(list_of_nums): # function body goes here
32) 根据 PEP 8 编码风格指南,Python 中的常量应如何命名?- 在此情况下,不使用下划线分隔单词 - 例如,maxValue = 255
- 小写并用下划线分隔单词 - 例如,max_value = 255
- 全大写并用下划线分隔单词 - 例如,MAX_VALUE = 255
- 混合大小写,不使用下划线分隔单词 - 例如,MaxValue = 255
33) 描述双端队列(deque)的功能?- 双端队列从一端添加元素,从另一端删除元素。
- 双端队列在一端或两端添加元素,但只从顶部删除元素。
- 双端队列在一端或两端添加元素,并在一端或两端删除元素。
- 双端队列只在顶部添加元素,但从任一端或两端删除元素。
34) 以下关于数值数据如何在二叉搜索树中组织的哪个陈述是正确的?- 对于二叉搜索树中的任意节点,左侧的子节点小于给定节点的值,右侧的子节点大于给定节点的值。
- 由于非常深的树产生的复杂性,二叉搜索树不能用于组织和搜索数值数据。
- 二叉搜索树的根节点将是随机数。根节点左侧的所有节点都应小于根节点的值,但它们不必以特定方式排序。
- 此模式将继续,直到所有数值都位于其节点中。最小的数值将位于根节点。下一个较大的数字将位于其左子节点,下一个较大的数字将位于其右子节点。
35) 你会如何使用装饰器?- 装饰器类似于类,并且在您进行函数式编程而不是面向对象编程时应该使用它。
- 装饰器是阅读您代码的人的一个视觉标记,表明您的代码某一部分是关键的,不应被更改。
- 您使用装饰器来修改函数的行为,而无需更改函数的代码。
- 导入语句前面有一个装饰器,Python 会知道导入正在导入的任何包或库的最新版本。
36) 您何时会使用 for 循环?- 仅在某些情况下,循环仅用于特定类型的编程。
- 当您需要迭代已知长度的可迭代对象中的每个元素时。
- 当您想限制代码中使用字符串时。
- 当您想在另一个文件中的函数中使用一个文件中的代码时。
37) 如果不修改递归处理的元素的状态,会发生什么?- 您无需更改正在递归的元素的状态。
- 当递归代码部分用完要递归的元素时,您将收到一个 KeyError。
- 您将收到一个 RuntimeError: maximum recursion depth exceeded。
- 使用递归的函数将返回 None。
38) 搜索二叉搜索树中项的运行时复杂度是多少?- 在二叉搜索树中搜索的运行时为 O(1),因为每个节点都像字典一样作为键。
- 在二叉搜索树中搜索的运行时为 O(n!),因为每个节点都必须与其他所有节点进行比较。
- 搜索二叉搜索树的运行时通常是 O(h),其中 h 是树的高度。
- 搜索二叉搜索树的运行时为 O(n),因为必须访问树中的每个节点。
39) 你会如何使用 mixin?- 您使用 mixin 来强制函数在运行时接受参数,即使该参数已从函数定义中省略。
- 您使用 mixin 来允许装饰器接受关键字参数。
- 您使用 mixin 来确保类的属性和方法不会与全局变量和函数发生冲突。
- 如果您有许多类都需要具有相同的函数,您将使用 mixin 来定义该函数。
40) 向堆栈添加元素和从堆栈移除元素的运行时复杂度是多少?- 以 O(1) 时间向堆栈添加元素,以 O(n) 时间从堆栈移除元素。
- 以 O(1) 时间向堆栈添加元素,以 O(1) 时间从堆栈移除元素。
- 以 O(n) 时间向堆栈添加元素,以 O(1) 时间从堆栈移除元素。
- 以 O(n) 时间向堆栈添加元素,以 O(n) 时间从堆栈移除元素。
41) 哪个陈述描述了元素如何被添加和移除堆栈?- 堆栈从一端添加元素,从另一端移除元素。
- 堆栈从顶部添加元素,从顶部移除元素。
- 堆栈从顶部添加元素,并从堆栈中的任意位置移除元素。
- 堆栈在一端或两端添加元素,并在一端或两端移除元素。
42) 递归函数中的基本情况是什么?- 基本情况是允许计算停止递归的条件。通常问题足够小,可以直接解决。
- 基本情况是对需要解决的总体问题的总结。
- 基本情况作为参数传递给其主体使用递归的函数。
- 基本情况类似于基类,因为它可能被另一个对象继承。
43) 为什么使用 'with' 关键字从 Python 脚本中打开文件是最佳实践?- 该关键字允许您选择用哪个应用程序打开文件。
- 该关键字的行为类似于 for 循环,允许您逐行访问文件。
- 在 Python 中使用该关键字打开文件没有好处。
- 当您使用 Python 中的关键字打开文件时,Python 会确保文件被关闭,即使发生异常或错误。
44) 你会如何使用虚拟环境?- 虚拟环境在您的项目周围创建了一个“气泡”,因此您在该环境中安装的任何库或包都不会影响您的整个机器。
- 与远程工作人员合作的团队使用虚拟环境来共享代码、进行代码审查和远程协作。
- 虚拟环境在 Python 2 中很常见,因为它们弥补了语言中缺失的功能。由于语言的进步,虚拟环境在 Python 3 中已过时。
- 虚拟环境已绑定到您的 GitHub 或 Bitbucket 帐户,允许您几乎从任何计算机访问您的任何存储库。
45) 从命令行运行给定文件中的所有 doctest 的正确方法是什么?- python3 - m doctest <_filename_>
- python3 <_filename_>
- python3 <_filename_> rundoctests
- python3 doctest
46) 什么是 lambda 函数?- 任何使用数学或逻辑常量的函数,通常在学术写作中用希腊字母表示。
- 使用装饰器时执行的函数。
- 定义保存在五行或更少代码中的任何函数。
- 一个小型、匿名的函数,可以接受任意数量的参数,但只有一个表达式可以评估。
47) list 和 tuple 的主要区别是什么?- 元组是不可变的,这意味着一旦创建了元组,就不能更改其中的数据。您可以按索引访问列表中的特定元素。但是,除非您迭代元组,否则您无法访问元组中的特定元素。
- 列表是可变的,这意味着您可以随时更改其中的数据。
- 列表是不可变的,这意味着一旦创建了列表,就不能更改其中的数据。元组是可变的,这意味着您可以随时更改其中的数据。
- 列表可以同时包含多种数据类型,但如果存在其他元素,元组也可以包含相同的数据类型。
48) 关于静态方法哪个陈述是正确的?- 静态方法可以绑定到类或类的实例。
- 静态方法可以访问和修改类或类的实例的状态。
- 静态方法通常用作实用程序或辅助方法,因为它们无法访问或修改类状态。
- 静态方法之所以称为静态,是因为它们总是返回 None。
49) 生成器返回什么?- 无
- 一个可迭代对象
- 从非空列表中链接的数据结构。
- 给定字典的所有键。
50) 类属性和实例属性之间有什么区别?- 实例属性可以被修改,但类属性不能被修改。
- 类属性在类的所有实例之间共享。实例属性可能仅特定于该实例。
- 类属性和实例属性之间没有区别。
- 类属性仅属于类,不属于该类的实例。实例属性在类的所有实例之间共享。
51) 如果在 while 循环中忘记包含最终导致 while 循环停止的逻辑,会发生什么?- 什么都不会发生;您的计算机知道何时停止运行 while 循环中的代码。
- 您将收到一个 KeyError。
- 您的代码将陷入无限循环。
- 您将收到一个 WhileLoopError。
52) 描述队列的功能。- 队列在一端添加元素,从另一端移除元素。
- 队列从顶部添加元素,从顶部移除元素。
- 队列从顶部添加元素,并从列表中的任意位置移除元素。
- 队列从顶部添加元素,并从队列中的任意位置移除元素。
53) defaultdict 如何工作?- defaultdict 将自动为您创建一个字典,其中键是数字 0-10。
- defaultdict 强制字典接受该类型(如字符串或整数)的键,这些类型在创建 defaultdict 时指定。
- 如果您尝试使用不存在的键从 defaultdict 读取,将创建一个新的默认键值对,而不是引发 KeyError。
- defaultdict 将字典的副本存储在内存中,当原始字典意外更改时,您可以将其作为默认值。
54) 您何时会使用 while 循环?- 当您想限制代码中使用字符串时。
- 当您想在一个文件中运行代码,而另一个文件中的代码也在运行时。
- 当您希望某些代码持续运行,只要某个条件为真。
- 当您想在同一文件中同时运行至少两段代码时。
55) 何时会在代码中使用异常/try except 块?- 当您想运行一些代码,但您需要一种方法来执行其他代码,以防引发异常时,您会使用 except/try 块。
- 您在单元测试中使用 except/try 块,以便单元测试始终通过。
- 您使用 try/except 块来向您的代码审阅者表明您尝试了一种新方法。但是,如果新方法不是他们想要的,他们可以在 except 关键字下留下评论。
- 您使用 except/try 块,以确保您的任何函数或方法都不会返回 None。
56) 在 Python 中,编译器如何识别 for 循环的内部块?- 由于循环后的缩进程度。
- 由于循环末尾的 end 关键字。
- 由于块被大括号 ({}) 包围。
- 由于循环体末尾的明显缩进。
57) 创建绑定到 set 的变量的正确语法是什么?- Myset1 = {0, 'apple1', 4.5}
- Myset1 = to_set(0, 'apple1', 4.5)
- Myset1 = (0, 'apple1', 4.5).to_set()
- Myset1 = (0, 'apple1', 4.5).set()
答案:选项 a
58) 定义一个 __init__() 方法,该方法在创建新类实例时设置特定于实例的属性的正确语法是什么?选项 a 选项 b 选项 c(正确答案) 选项 d
59) 如果不带参数调用此递归函数,它将打印什么?选项 a 选项 b 选项 c 选项 d(正确答案) 答案:D
60) 在 Python 中,使用 _ 来注册两个集合之间的交集,使用 _ 来查找并集。- 交集-并集
- |; &
- &; |
- &&; ||
答案:c
61) if/else 语句的目的是什么?- 它告诉计算机在您编写的指令不正确时运行哪段代码。
- 如果所有导入都成功,它将运行一段代码,如果导入失败,则运行另一段代码。
- 如果条件为真,它将执行一段代码;如果条件为假,则执行另一段代码。
- 它告诉计算机在有足够内存处理时运行哪段代码,以及在内存不足以处理时运行哪段代码。
62) “抽象”在面向对象的 Python 中的含义是什么?- 抽象意味着可以使用一种不同的代码风格,因为程序在后台知道了许多细节。
- 抽象意味着实现对用户隐藏,并且只显示相关数据或信息。
- 抽象意味着类的属性和功能被合并到一个实体中。
- 抽象意味着一个类可以继承自多个父类。
|