2024年Python最全Python常考基础面试题【文末送Python书籍两本】

  • 6、如何提高 Python 的运行效率吗

  • 7、用过类吗?知道继承吗?请写一个例子,用到继承。

  • 8、深拷贝和浅拷贝

  • 9、列举8个常用模块都有那些?

  • 10、Python垃圾回收机制?(知道即可)

  • 🎉参与抽粉丝送书啦

Python基础面试题

=============================================================================

1、 Python 数据结构有哪些


  • 整数(int)

  • 浮点(float)

  • 字符串(str)

  • 布尔(bool)

  • 列表(list)

  • 元组(tuple)

  • 字典(dict)

  • 集合(set)

2、Python 中列表和元组的区别是什么?元组是不是真的不可变?


  • 列表:list 是可变类型、数据可以动态变化

  • 元组:是不可变类型,大小固定

3、什么是生成器和迭代器?它们之间有什么区别?


迭代器

  • 作用:简化循环的代码并可以节约内存

  • 是一个可以记住遍历的位置的对象。迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退

  • 迭代器有两个基本的方法:iter() 和 next()。

生成器

  • 作用:节约大量内存

  • 使用了 yield 的函数被称为生成器、生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器

  • 原理:在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回 yield 的值, 并在下一次执行 next() 方法时从当前位置继续运行

4、什么是闭包?装饰器又是什么?装饰器有什么作用?你用过装饰器吗?请写一个装饰器的例子


  • 闭包是指Python中将组成函数的语言和这些语言的执行环境打包到一起所得到的对象

  • 装饰器是一种增加函数或类功能的简单方法,它可以快速给不同的函数或类插入相同的功能。语法:“@装饰器名”加在函数之前

  • 例:

在这里插入图片描述

5、什么是匿名函数,用匿名函数有什么好处?


匿名函数:使用lambda创建的函数,所谓匿名,意即不再使用 def 语句这样标准的形式定义一个函数。

好处

  • 1、使用Python写一些执行脚本时,使用lambda可以省去定义函数的过程,让代码更加精简。

  • 2、对于一些抽象的,不会别的地方再复用的函数,有时候给函数起个名字也是个难题,使用lambda不需要考虑命名的问题。

  • 3、使用lambda在某些时候让代码更容易理解。

应用场景:经常与一些内置函数相结合使用,比如说map()、filter()、sorted()、reduce()

表达式格式lambda 参数列表: lambda体

案例

frame.applymap(lambda x: ‘%.2f’ % x)

frame.apply(lambda x: x.max() - x.min())

6、如何提高 Python 的运行效率吗


  • 使用生成器优化内存

  • 循环的优化:多个if elif条件判断,可以把最有可能先发生的条件放到前面写,这样可以减少程序判断的次数,提高效率

  • 优化算法时间:算法的时间复杂度对程序的执行效率影响最大,在Python中可以通过选择合适的数据结构来优化时间复杂度,如list和set查找某一个元素的时间复杂度分别是O(n)和O(1)

7、用过类吗?知道继承吗?请写一个例子,用到继承。


  • 继承:指通过获取父对象的属性和能力,再加上自定义的属性和能力而成为一个对象的子对象或一个类的子类。

在这里插入图片描述

  • 重写:方法名取一样,方法重写

在这里插入图片描述

8、深拷贝和浅拷贝


  • 浅拷贝,改变原始对象中为可变类型的元素的值,会同时影响拷贝对象;改变原始对象中为不可变类型的元素的值,不会响拷贝对象。

  • 深拷贝,除了顶层拷贝,还对子元素也进行了拷贝。经过深拷贝后,原始对象和拷贝对象所有的可变元素地址都没有相同的了

9、列举8个常用模块都有那些?


最后

不知道你们用的什么环境,我一般都是用的Python3.6环境和pycharm解释器,没有软件,或者没有资料,没人解答问题,都可以免费领取(包括今天的代码),过几天我还会做个视频教程出来,有需要也可以领取~

给大家准备的学习资料包括但不限于:

Python 环境、pycharm编辑器/永久激活/翻译插件

python 零基础视频教程

Python 界面开发实战教程

Python 爬虫实战教程

Python 数据分析实战教程

python 游戏开发实战教程

Python 电子书100本

Python 学习路线规划

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

需要这份系统化学习资料的朋友,可以戳这里无偿获取

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

  • 17
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然,我可以为您介绍一些Python基础面试。以下是一些常见的Python基础面试题及其答案: 1. Python中的列表和元组有什么区别? 答:列表和元组都是Python中的数据结构,但有几个关键的区别: - 列表是可变的,可以通过索引进行修改,而元组是不可变的,不能修改。 - 列表使用方括号 [] 表示,元组使用圆括号 () 表示。 - 列表通常用于存储多个相关的项目,而元组通常用于表示一个不可变的数据集合。 2. Python中的字典是什么?如何访问和修改字典中的值? 答:字典是Python中的一种数据结构,用于存储键值对。可以使用键来访问和修改字典中的值。例如: - 修改字典中的值:dict_name[key] = new_value 3. 什么是Python中的迭代器和生成器? 答:迭代器是一个对象,它可以在遍历时逐个返回值。生成器是一种特殊类型的迭代器,它使用 yield 语句来生成值。生成器可以节省内存,并且在需要时才生成值。 4. Python中的装饰器是什么?如何使用装饰器? 答:装饰器是一种Python语法,用于修改函数的行为。它们允许在不修改原始函数代码的情况下添加额外的功能。装饰器使用 @ 符号来应用于函数。例如: ``` @decorator def function_name(): # 函数体 ``` 5. Python中的异常处理是什么?如何使用 try-except 语句处理异常? 答:异常处理是一种机制,用于处理程序运行时可能出现的错误。可以使用 try-except 语句来捕获和处理异常。例如: ``` try: # 可能引发异常的代码 except ExceptionType: # 异常处理代码 ```

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值