题记部分

001 || Python的特点和优点

Python可以作为编程的入门语言,因为他具有以下特质:

(1)解释型

(2)动态特性

(3)面向对象

(4)语法简洁

(5)开源

(6)丰富的社区资源

002 || 深拷贝和浅拷贝的区别

深拷贝是将对象本身复制给另一个对象,意味着如果对对象的副本进行更改时不会影响原对象。在Python中,使用deepcopy()函数进行深拷贝。浅拷贝是将对象的引用复制给另一个对象。因此,如果我们在副本中进行更改,则会影响原对象。使用copy()函数进行浅拷贝。

003 || 列表和元组的区别

主要区别在于列表是可变的,元组是不可变的。改变元组则程序报错【TypeError: 'tuple' object does not support item assignment】

004 || 解释Python中的三元表达式

在Python中不需要使用?符号,而是使用 [on true] if [expression] else [on false]

如果[expression]为真,则[on true]部分被执行。如果表示假则[on false]部分被执行。

005 || Python中如何实现多线程

线程是轻量级的线程,多线程允许一次执行多个线程。Python是一种多线程语言,它有一个多线程包。

GIL(全局解释器锁)确保一次执行单个线程。一个线程保存GIL并在起传递给下一个线程之前执行一些操作,这就产生了并行执行的错觉。但实际上,只是线程轮流在CPU上。当然,所有传递都会增加执行的开销。

006 || 解释继承

一个类继承自另一个类,也可以说是一个孩子类/派生类/子类,继承自父类/基类/超类,同时获取所有的类成员(属性和方法)

继承使我们可以重用代码,并且还可以更方便地创建和维护代码。Python支持以下类型的继承:

(1)单继承 —— 一个子类继承自单个基类

(2)多重继承 —— 一个子类继承自多个基类

(3)多级继承 —— 一个子类继承自一个基类,而基类继承自另一个基类

(4)分层继承 —— 多个子类继承自同一个基类

(5)混合继承 —— 两种或两种以上继承类型的组合

007 || 什么是Flask

Flask是一个使用Python编写的轻量级Web应用框架,使用BSD授权。其WSGI工具箱采用Werkzeug,模板引擎则使用Jinja2。除了Werkzeug和Jinja2以外几乎不依赖任何外部库。因为Flask被称为轻量级框架。Flask的会话使用签名cookie来允许用户查看和修改会话内容。它会记录从一个请求到另一个请求的信息。但如果要修改会话,则必须有密钥Flask.secret_key。

008 || 如何在Python中管理内存

Python用一个私有堆内存空间来放置所有对象和数据结构,我们无法访问它。由解释器来管理它。不过使用一些核心API。我们可以访问一些Python内存管理工具控制内存分配。

009 || 解释Python中的help()函数和dir()函数

help()函数返回帮助文档和参数说明,运行结果如下

Help on function copy in module copy
copy(x)
Shallow copy operation on arbitrary Python objects.
See the module』s doc string for more info.

dir()函数返回对象中的所有成员(任何类型)

010 || 当退出Python时是否释放所有内存分配

不会释放。那些具有对象循环引用或者全局命名空间引用的变量,在Python退出时往往不会被释放,另外不会释放C库保留的部分内容。

注: Python的C库是指用C语言编写的扩展模块,这些模块可以提供高性能的底层功能。‌ 通过使用C语言编写的扩展模块,Python程序能够集成这些底层功能,从而提高程序的性能和效率‌

011 || 什么是猴子补丁

Python中的猴子补丁是一种在运行时动态修改代码的技术。允许在不修改源代码的情况下,改变代码的执行方式或增加功能。猴子补丁通过替换对象的属性或方法,达到修改代码行为的目的。具体来说,Python的类是可变的,方法只是类的属性,因此我们可以在运行时修改这些属性,从而改变方法的行为。

012 || 什么是Python字典

字典是一种数据类型,类似于Java中的Map。是一个无序的键值对集合,其中的键必须是唯一的,通常用于存储大量的关键数据。字典中的键值对用冒号分割,而各个键值对之间用逗号分割,整个字典包括在花括号中。字典的值是可变的。

013 || 能否解释一下 *args**kwargs

*args**kwargs是Python中的可变位置参数和关键字参数。它们允许函数接收任意数量的参数。

*args允许你传递一个非键值对的可变数量的参数列表。

**kwargs允许你传递一个键值对的可变数量的参数列表。

如果不知道将多少个参数传递给函数,比如想传递一个列表或一个元组值时,可以使用*args

不知道将会传入多少关键字参数时,使用*kwargs会收集关键字参数。

014 || 什么是负索引

在Python中,负索引用于从序列的末尾开始计数,而不是从开头开始。

序列的默认索引是从0开始的,但是最大的索引是序列长度减去1。当使用负索引时,可以从-1开始计数,最后一个元素的索引是-1,倒数第二个元素的索引是-2,依此类推。

— 业精于勤荒于嬉,行成于思毁于随 —

Python - [04] 面试题汇总的更多相关文章

  1. python面试笔试题汇总

    Python面试攻略(嗨谈篇) 110道python面试笔试题汇总,你能答对几道? Python 面试问答 Top 25 2018 年最常见的 Python 面试题 & 答案

  2. Python 经典面试题汇总之数据库篇

    数据库和缓存 1.列举常见的关系型数据库和非关系型都有那些? 关系型数据库(需要有表结构) mysql.oracle.splserver.postgresql.db2.sybase 非关系型数据库(是 ...

  3. 110道python面试笔试题汇总,你能答对几道?

    数据分析系列教程插播一篇面试题教程,最近公众号新来了不少朋友,这几天不少粉丝留言说问我有没有python面试题,其实之前分享过一些面试题,今天统一再给大家分享一遍,也希望能帮助此时仍在找工作的同学,尽 ...

  4. Python 经典面试题汇总之框架篇

    前端和框架 1.谈谈你对http协议的认识 浏览器本质,socket客户端遵循Http协议 HTTP协议本质:通过\r\n分割的规范,请求响应之后断开链接 ==> 短连接.无状态 具体: Htt ...

  5. Python 经典面试题汇总之网络篇

    网络篇 1.简述 OSI 七层协议 物理层:定义物理设备标准,如网线的接口类型.光纤的接口类型.各种传输介质. 数据链路层:定义如何传输格式化数据,以及如何访问物理介质. 网络层:定义逻辑网络地址. ...

  6. Python 经典面试题汇总之基础篇

    基础篇 1:为什么学习Python 公司建议使用Python,然后自己通过百度和向有学过Python的同学了解了Python.Python这门语言,入门比较简单,它简单易学,生态圈比较强大,涉及的地方 ...

  7. Python面试题汇总

    原文:http://blog.csdn.net/jerry_1126/article/details/44023949 拿网络上关于Python的面试题汇总了,给出了自认为合理的答案,有些题目不错,可 ...

  8. iOS常见面试题汇总

    iOS常见面试题汇总 1. 什么是 ARC? (ARC 是为了解决什么问题而诞生的?) ARC 是 Automatic Reference Counting 的缩写, 即自动引用计数. 这是苹果在 i ...

  9. Redis 面试题汇总

    Redis 面试题汇总 1.Redis 使用场景有哪些? 答:Redis 使用场景如下: 记录帖子点赞数.点击数.评论数 缓存近期热帖 缓存文章详情信息 记录用户会话信息 2.Redis 有哪些功能? ...

  10. AJAX笔试面试题汇总

    AJAX笔试面试题汇总 Javascript 1. 什么是ajax,为什么要使用Ajax(请谈一下你对Ajax的认识) 什么是ajax: AJAX是“Asynchronous JavaScript a ...

随机推荐

  1. openwrt交换机配置命令-swconfig

    swconfig swconfig 是交换接口 (switch) 配置命令. 交换机是二层设备,是我们用来配置vlan的必备利器. 使用swconfig list可以列出当前可用的 SWITCH 设备 ...

  2. Shiro-BasicHttpAuthenticationFilter 鉴权过滤器的使用方式

    它的作用是用来根据路径匹配结果,调用相应过滤器 onPreHandle 这里是正在的执行逻辑,之前的都是判断,它返回了两个方法: isAccessAllowed() onAccessDenied() ...

  3. 【Windows】查看笔记本电池寿命/损耗度(查看电池使用时间报告)

    ① Win+r 运行 命令提示符窗口 ② 输入powercfg/batteryreport 你将会得到电池使用时间报告 将这个地址粘贴到浏览器地址栏访问,或者根据这个地址在资源管理器中找到这个文件夹双 ...

  4. linux shell移植,sh不支持数组及bash移植

    查看此时系统shell ls -al /bin/sh Linux 操作系统缺省的 shell 是Bourne Again shell,它是 Bourne shell 的扩展,简称 Bash,与 Bou ...

  5. 使用Matlab进行图像分类

    Classify images Instructions are in the task pane to the left. Complete and submit each task one at ...

  6. 关于vue加element-ui上传文件获取文件的sha256的值 第二篇 更改压缩包编码错误

    这个依然需要插件crypto-js 首先下载引入 import CryptoJs from "crypto-js"; 话不多说直接上代码,首先是element的上传 <el- ...

  7. docker-daemon配置

    { "api-cors-header":"", ------在引擎API中设置CORS标头 "authorization-plugins": ...

  8. 【Java RPC】使用netty手写一个RPC框架 结合新特性 虚拟线程

    [手写RPC框架]如何使用netty手写一个RPC框架 结合新特性 虚拟线程 什么是RPC框架 RPC(Remote Procedure Call)远程过程调用,是一种通过网络从远程计算机程序上请求服 ...

  9. ofd文件拆分合并思路探索 -- 附下载程序

      前言  ofd文件拆分合并会在多个场合用到,但市面上此类工具并不多.拆分和合并虽然为两个功能,但从编程角度考虑,其处理思路有相同之处.文章就以合并为例,讲一下处理思路.作者也写了一个拆分合并小工具 ...

  10. 微服务实战系列(十)-网关高可用之中间件Keepalived-copy

    1.场景描述 因为要做网关的高可用,用到了keepalived+nginx,来保证nginx的高可用,如下图: 安装了keepavlived,走了一些弯路,记录下吧,nginx的安装就不多说了,博客已 ...