100 个基本 Python 面试问题第四部分(61-80)(1),2024年最新春招面试时间

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Python全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img



既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上Python知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024c (备注Python)
img

正文

try:

print(“在 try 块中执行代码”)

print(exception)

except:

print(“进入except块”)

finally:

print(“到达最后一个区块”)

输出是:

在 try 块中执行代码

进入except块

到达最后一个区块

回到目录


Q-66:你如何为 Python 中的预定义条件引发异常?


我们可以根据某些条件引发异常。

例如,如果我们希望用户只输入奇数,否则会引发异常。

示例 - 引发异常

while True:

try:

value = int(input(“输入一个奇数-”))

if value%2 == 0:

raise ValueError(“由于无效输入退出!!!”)

else:

print(“输入的值为: %s” % value)

except ValueError as ex:

print(ex)

break

输出是:

输入一个奇数- 2

由于无效输入退出!!!

输入一个奇数- 1

输入的值为: 1

输入一个奇数-

回到目录


Q-67:什么是 Python 迭代器?


Python 中的迭代器是类似数组的对象,允许在下一个元素上移动。我们在遍历循环时使用它们,例如在“for”循环中。

Python 库没有。的迭代器。例如,一个列表也是一个迭代器,我们可以在它上面启动一个 for 循环。

回到目录


Q-68:Iterator 和 Iterable 有什么区别?


列表、元组、字典和集合等集合类型都是可迭代对象,而它们也是可迭代容器,在遍历时返回迭代器。

回到目录


以下是一些高级 Python 面试问题。

Q-69:什么是 Python 生成器?


Generator 是一种函数,它让我们指定一个函数,它的作用类似于迭代器,因此可以在“for”循环中使用。

在生成器函数中,yield 关键字替代了 return 语句。

def fn():

return “简单的 Python 函数”

def generate():

yield “Python 生成器函数”

print(next(generate()))

输出是:

Python 生成器函数

回到目录


Q-70:Python 中的闭包是什么?


Python 闭包是由另一个函数返回的函数对象。我们使用它们来消除代码冗余。

在下面的例子中,我们编写了一个简单的乘法闭包。

def multiply_number(num):

def product(number):

‘product() here is a closure’

return num * number

return product

num_2 = multiply_number(2)

print(num_2(11))

print(num_2(24))

num_6 = multiply_number(6)

print(num_6(1))

输出是:

22

48

6

回到目录


Q-71:Python 中的装饰器是什么?


Python 装饰器使我们能够动态地向给定对象添加新行为。在下面的示例中,我们编写了一个简单的示例来显示函数执行前后的消息。

def decorator_sample(func):

def decorator_hook(*args, **kwargs):

print(“函数调用前”)

result = func(*args, **kwargs)

print(“函数调用后”)

return result

return decorator_hook

@decorator_sample

def product(x, y):

“两个数相乘的函数”

return x * y

print(product(3, 3))

输出是:

函数调用前

函数调用后

9

回到目录


Q-72:你如何在 Python 中创建字典?


让我们以建筑工地统计为例。为此,我们首先需要使用冒号(“:”)拆分键值对。键应该是不可变类型,也就是说,我们将使用不允许在运行时更改的数据类型。我们将从整数、字符串或元组中进行选择。

但是,我们可以采用任何类型的值。为了区分数据对,我们可以使用逗号(“,”)并将整个内容保留在花括号({…})中。

site_stats = {‘site’: ‘tecbeamers.com’, ‘traffic’: 10000, “type”: “organic”}

type(site_stats)

<class ‘dict’>

print(site_stats)

{‘type’: ‘organic’, ‘site’: ‘tecbeamers.com’, ‘traffic’: 10000}

回到目录


Q-73:你如何在 Python 中读取字典?


要从字典中获取数据,我们可以使用键直接访问。我们可以在提到字典对应的变量名后使用方括号 […] 将“key”括起来。

site_stats = {‘site’: ‘tecbeamers.com’, ‘traffic’: 10000, “type”: “organic”}

print(site_stats[“traffic”])

我们甚至可以调用 get 方法从字典中获取值。它还让我们设置一个默认值。如果缺少密钥,则会发生 KeyError。

site_stats = {‘site’: ‘tecbeamers.com’, ‘traffic’: 10000, “type”: “organic”}

print(site_stats.get(‘site’))

tecbeamers.com

回到目录


Q-74:如何在 Python 中遍历字典对象?


我们可以使用“for”和“in”循环来遍历字典对象。

site_stats = {‘site’: ‘tecbeamers.com’, ‘traffic’: 10000, “type”: “organic”}

for k, v in site_stats.items():

print(“The key is: %s” % k)

print(“The value is: %s” % v)

print(“++++++++++++++++++++++++”)

输出是:

The key is: type

The value is: organic

++++++++++++++++++++++++

The key is: site

The value is: tecbeamers.com

++++++++++++++++++++++++

The key is: traffic

The value is: 10000

++++++++++++++++++++++++

回到目录


Q-75:你如何在 Python 中向字典添加元素?


我们可以通过使用新键修改字典来添加元素,然后为其设置值。

#设置一个空白字典

site_stats = {}

site_stats[‘site’] = ‘google.com’

site_stats[‘traffic’] = 10000000000

site_stats[‘type’] = ‘Referral’

print(site_stats)

{‘type’: ‘Referral’, ‘site’: ‘google.com’, ‘traffic’: 10000000000}

我们甚至可以在 update() 方法的帮助下连接两个字典以获得更大的字典。

site_stats[‘site’] = ‘google.co.in’

print(site_stats)

{‘site’: ‘google.co.in’}

site_stats_new = {‘traffic’: 1000000, “type”: “social media”}

site_stats.update(site_stats_new)

print(site_stats)

{‘type’: ‘social media’, ‘site’: ‘google.co.in’, ‘traffic’: 1000000}

回到目录


Q-76:如何在 Python 中删除字典的元素?


我们可以使用 del() 方法删除字典中的键。

site_stats = {‘site’: ‘tecbeamers.com’, ‘traffic’: 10000, “type”: “organic”}

del site_stats[“type”]

print(site_stats)

{‘site’: ‘google.co.in’, ‘traffic’: 1000000}

我们可以使用的另一种方法是 pop() 函数。它接受密钥作为参数。另外,第二个参数,如果键不存在,我们可以传递一个默认值。

site_stats = {‘site’: ‘tecbeamers.com’, ‘traffic’: 10000, “type”: “organic”}

print(site_stats.pop(“type”, None))

organic

print(site_stats)

{‘site’: ‘tecbeamers.com’, ‘traffic’: 10000}

回到目录


Q-77:你如何检查字典中键的存在?


我们可以使用 Python 的“in”运算符来测试 dict 对象中是否存在键。

site_stats = {‘site’: ‘tecbeamers.com’, ‘traffic’: 10000, “type”: “organic”}

‘site’ in site_stats

True

‘traffic’ in site_stats

True

“type” in site_stats

True

早些时候,Python 还提供了已被弃用的 has_key() 方法。

回到目录


Q-78:Python 中列表推导式的语法是什么?


列表推导式的签名如下:

[ expression(var) for var in iterable ]

例如,下面的代码将返回从 10 到 20 的所有数字并将它们存储在一个列表中。

alist = [var for var in range(10, 20)]

print(alist)

回到目录


Q-79:Python 中字典理解的语法是什么?


字典的语法与列表推导式的语法相同,但不同之处在于它使用大括号:

{ aKey, itsValue for aKey in iterable }

例如,下面的代码将返回所有数字 10 到 20 作为键,并将这些数字的相应平方存储为值。

adict = {var:var**2 for var in range(10, 20)}

print(adict)

回到目录


Q-80:Python 中生成器表达式的语法是什么?


文末有福利领取哦~

👉一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。img

👉二、Python必备开发工具

img
👉三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
img

👉 四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(文末领读者福利)
img

👉五、Python练习题

检查学习结果。
img

👉六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
img

img

👉因篇幅有限,仅展示部分资料,这份完整版的Python全套学习资料已经上传

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)
img

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

)

👉 四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(文末领读者福利)
img

👉五、Python练习题

检查学习结果。
img

👉六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
img

img

👉因篇幅有限,仅展示部分资料,这份完整版的Python全套学习资料已经上传

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化的资料的朋友,可以添加V获取:vip1024c (备注python)
[外链图片转存中…(img-NBawPsjv-1713614371624)]

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  • 16
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值