2021Python基础面试题,简单好用,实践经验

Posted 程序员唐丁

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2021Python基础面试题,简单好用,实践经验相关的知识,希望对你有一定的参考价值。

1、请简单介绍一下Python的单例模式

单例模式有以下特征:1、单例类只能有一个实例;2、必须自行创建这个实例;3、必须自行向整个系统提供这个实例。

实现方法之一使用__new__方法

原理:new方法执行先于init方法

class Person(object):
    _instance = None
    def __new__(cls, *args, **kwargs):
        if not cls._instance:
            cls._instance = super().__new__(cls, *args, **kwargs)
        return cls._instance

2、Python的数据结构有哪些,哪些是可变的?哪些不可变?

可变:列表、集合、字典

不可变:数值、元组、字符串

3、Python是如何进行内存管理的?

从三个方面来说,一是对象的引用计数机制,二是垃圾回收机制,三是内存池机制。

4、python之禅?

import this

大概意思:优美胜于丑陋,简洁胜于复杂

5、Python中单下划线、双下划线、头尾双下划线的区别?

  • 头尾双下划线一般是系统定义的变量
  • 单下划线类似于Java中被protected修饰的变量,只能允许其本身与子类进行访问
  • 双下划线类似于Java中被private修饰的变量,只能允许其本身进行访问

6、Python中的装饰器有什么作用?

装饰器本身是个嵌套函数,可以在不改变被修饰函数的情况下,扩展被修饰函数的功能

7、当被修饰函数有多个装饰器时,执行顺序是怎样的?

  • 装饰器函数在被装饰函数定义好后立即执行。多个装饰器的调用顺序是自下往上的
  • 被装饰函数执行时,装饰器的执行顺序是从上往下的

8、Python如何删除list中重复的元素

先转成set后再转成list,利用了集合的不可重复性

9、Python中pass语句的作用是什么?

不执行任何操作,用作占位符

10、Python中赋值、浅拷贝和深拷贝的区别?

  • 赋值:创建了对象的一个新的引用,修改其中任意一个变量都会影响到另一个。

  • 浅拷贝:创建一个新的对象,如果引用的方式修改其中一个对象,另外一个也会改变

  • 深拷贝:创建一个新的对象,并且递归的复制它所包含的对象,修改其中一个,另外一个不会改变

11、正则匹配中.*和.*?的区别?

不带问号的是贪婪匹配,带问号的是非贪婪匹配

12、re中match()和search()的区别?

  • match()必须从头开始匹配
  • search()可以在任何位置开始匹配

13、python中单引号、双引号、三引号的区别?

单引号和双引号没区别,三引号可以直接换行

14、什么是Python的列表表达式?

[表达式 for 迭代变量 in 可迭代对象 [if 条件表达式] ]

15、写一个Python的三元表达式?

"male" if flag==1 else "female"

16、python中的多线程能充分发挥cpu的性能吗?

不能,因为Python的默认解释器CPython有GIL(全局解释器锁),所以任何时刻只有一个线程在运行。

17、Python的字典中的键具有什么特性?

不可变性

18、解释一个Python中进程、线程和协程的区别?

  • 进程是系统资源分配的基本单位

  • 线程是轻量级进程,一个进程可以有多个线程,一个进程下的多个进程可以共享进程的资源。且进程和线程都由操作系统控制。

  • 协程又称为微线程,由用户程序自己控制。

19、简单说一下Flask和Django的区别?

Django: 大而全,但是耦合性高。Auth,Permission,admin基本没用
        开发快,符合MVC模式

Flask: 微框架,很小巧。需要哪些功能,自己装。
        需要熟悉MVC模式

20、Python类中有哪些方法?

实例方法、类方法、静态方法,其中类方法和静态方法不需要初始化实例即可调用。

本公众号现提供以下服务:教务系统成绩和课表查询、四六级查询、小说和影视资源获取、教资成绩查询(即将上线)、专利查询(即将上线)、计算机等级考试查询(即将上线)
公众号承接安卓自动化脚本、网站、微信小程序等程序开发,有需要的伙伴欢迎洽谈~~

以上是关于2021Python基础面试题,简单好用,实践经验的主要内容,如果未能解决你的问题,请参考以下文章

2021Python基础面试题,简单好用,实践经验

2021Python基础面试题,简单好用,实践经验

编程实践系列: 字节跳动面试题

2022年Python技术类面试题总结(面试题+答案解析)

Python爬虫零基础到进阶(大纲)

最强面试题整理第一弹:Python 基础面试题(附答案)