面试-python基础知识_python面试基础知识-程序员宅基地

技术标签: python  面试经历  

1.python的常用的数据结构有哪些?

Python中常见的数据结构可以统称为容器。
序列(如列表和元组)、
映射(如字典)
集合(set)是三类主要的容器。

2.python的常用的数据类型?

可变数据类型:列表、字典、集合
不可变数据类型:数字、元组、字符串

dict和list比较
dict特点:
1.查找和插入的速度极快,不会随着key的增加而增加
2.需要占用大量的内存,内存浪费多
3.dict是用空间来换取时间的一种方法

list的特点
1.查找和插入的时间随着元素的增加而增加
2.占用空间小,浪费内存很少
python怎么让列表去重(set)
在这里插入图片描述

tuple与list的区别
元组的特点:
1.比列表操作速度快
2.对数据“写保护“
3.可用于字符串格式化中
4.可作为字典的key

3.python生成随机数 random(0,10)可以生成包含0~10的随机数吗?

不包含0和10

4.python反转列表

reverse

li5 = [111, 22, 31, 41, 5, 6, 888, 8, 34, 8, 12, 7, 33]
li5.reverse()li5.reverse()
print(li5)

结果:
在这里插入图片描述

5.python中有没有用过装饰器、用装饰器的场景,理解装饰器中的逻辑吗?

简单来说装饰器就是一个函数,它的作用就是装饰一个其他的函数,用法就是@+定义的函数名,这样他在运行新函数前会先去运行调用的装饰器函数,这种被成为语法糖
在这里插入图片描述
https://mp.weixin.qq.com/s/nc9Lz9E3pHJdI16g82FK2w

6. python的匿名函数是什么?

https://zhuanlan.zhihu.com/p/78698111
在这里插入图片描述
匿名函数不需要显示地定义函数名,使用【lambda + 参数 +表达式】的方式,即:

lambda [arg1 [,arg2, … argN]] : expression
也就是说,lambda用来表示匿名函数,可以传入多个参数,但只能有一个表达式。
在这里插入图片描述
匿名函数的优点是什么呢?
不用取名称,因为给函数取名是比较头疼的一件事,特别是函数比较多的时候
可以直接在使用的地方定义,如果需要修改,直接找到修改即可,方便以后代码的维护工作
语法结构简单,不用使用def 函数名(参数名):这种方式定义,直接使用lambda 参数:返回值 定义即可

7. Python 函数参数前面一个星号(*)和两个星号(**)的区别

https://mp.weixin.qq.com/s/5EfcHd8_-gLTjTkF6htIag
在这里插入图片描述
在这里插入图片描述

8. 两个列表,list1 = [1,2,3], list2= [4,5,6], 怎么扩展让list1=[1,2,3,4,5,6,]

list1.extend(list2)

9.list1 = [1,2,3], list2= [1,2,4,5,6]怎么取出两个列表不一样的内容 ?

可以将他们先合并再去重
list3=list1.extend(list2)
list4=list(set(list3))

10. 列表用下标可以改变赋值,字符串可以吗 ?

不可以,字符串、数字、元组是不可变数据类型

11. 想要改变字符串的某一个元素应该怎么办?

在这里插入图片描述

12. 正则表达式限制只能输入5个数字, 应该怎么写正则表达式语句?

在这里插入图片描述

13. json跟字典的区别

JSON是一种轻量级的数据交换格式采用完全独立于编程语言的文本格式来存储和表示数据拥有简洁和清晰的层次结构
字典属于python语言中的一种可变数据类型,由python编译器进行识别
json.dumps() --》将dict转换成json
json.loads()—>将json转换成python识别的dict

14. 字典怎么遍历 key, value,如果同时要遍历key 和value 呢?

在这里插入图片描述
在这里插入图片描述

15. 如何将两个列表转化未一个字典,列表a的值作为 key,列表b的值作为 value?

import numpy as np

a = np.array(['a', 'b', 'c', 'd'])
b = np.array([2, 2, 4, 12])

dict1 = dict(zip(a, b))

#结果
# {'a': 2, 'b': 2, 'c': 4, 'd': 12}


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_38224014/article/details/123673824

智能推荐

【WebApi】————.net WebApi开发(一)_webapi .net-程序员宅基地

文章浏览阅读8.5k次。【1】.部署环境.net4及以上版本。【2】.vs2010 开发需单独安装vs2010 sp1和mvc4mvc4:http://www.asp.net/mvc/mvc4【3】.开发1.新建项目选择ASP.net MVC 4 Web应用程序2.选择Web API 3.在新建立的项目里面有已经生成的webapi模版其中App_Start文件夹下WebApiCo..._webapi .net

几招教你阻止百度搜索自动跳转百度APP(其他网站也适用)!_百度自动跳转app怎么解决-程序员宅基地

文章浏览阅读10w+次,点赞15次,收藏33次。最近阿虚看到个消息说「百度」发布了新政策,禁止网站通过搜索引擎打开后折叠内容强迫下载APP客户端听起来似乎是百度难得良心一回?但实际上该政策仅限于手机百度APP内如果你是通过浏览器用百度搜索则与新政策完全没关系正好前不久不少粉丝来问过我这样一个问题:怎么屏蔽手机浏览器上的「跳转某某APP打开查看」提示那今天阿虚就来教一下怎么解决吧,毕竟这东西的确是有点烦人…屏蔽「跳转某某APP打开查看」这个问题我细看了下,还得分俩类:文章只能显示部分,然后提示你需要安装APP才能查看的,这种应该是大_百度自动跳转app怎么解决

PHP快速入门12-异常处理,自定义异常、抛出异常、断言异常等示例_php 抛出异常-程序员宅基地

文章浏览阅读843次。PHP的异常处理机制可以帮助我们在程序运行时遇到错误或异常情况时,及时发出警告并停止程序继续运行。下面是10个例子,分别展示了PHP异常处理的不同用法。_php 抛出异常

linux 清空docker容器日志_linux清理docker容器log-程序员宅基地

文章浏览阅读221次。【代码】linux 清空docker容器日志。_linux清理docker容器log

青岛大学开源OJ平台搭建_github oj开源-程序员宅基地

文章浏览阅读7.3k次,点赞3次,收藏15次。源码地址为:https://github.com/QingdaoU/OnlineJudge可参考的文档为:https://github.com/QingdaoU/OnlineJudgeDeploy/tree/2.0一、安装所依赖的环境sudo apt-get update && sudo apt-get install -y vim python-pip curl g..._github oj开源

浅谈数据安全-程序员宅基地

文章浏览阅读4.4k次。在《网络安全法》中,虽然已经明确了要求保障网络数据的完整性、保密性、可用性的能力,但随着近些年数据安全热点事件的出现,如数据泄露事件、个人信息滥用事件。表明对数据保护的要求仅依赖《网络安全法》中的几款条例是不足以支撑的。因此2021年9月1日《中华人民共和国数据安全法》便正式诞生,从此数据安全也被推上了风口浪尖。那么数据安全如何定义?与传统网络安全有何区别?数据安全体系又应该如何建立?..._数据安全

随便推点

docker安装及部署mysql_docker部署mysql-程序员宅基地

文章浏览阅读1.5k次,点赞2次,收藏9次。docker安装与mysql部署_docker部署mysql

联想笔记本G510升级固态硬盘(SSD)血泪教程!!!_联想g510更换固态硬盘-程序员宅基地

文章浏览阅读8.5w次,点赞23次,收藏55次。#联想笔记本G510升级固态硬盘(SSD)血泪教程!!!用了5年的联想笔记本G510,经过了四年的游戏历程,然后四年后还老当益壮的挣扎在我工作的战斗一线,是我并肩作战多年,比兄弟还要亲的兄弟,虽然此时已经身躯残破,反应迟缓我依旧不舍得抛弃它(主要是没钱!)然后为了我个人的用户体验决定花少量的票子,让它多挣扎一会,最好是能坚持到我度过贫困期. 下面是我升级的悲催历程! - 首先为了提升运行速..._联想g510更换固态硬盘

问题记录——正则表达式匹配控制符_正则表达式匹配控制字符-程序员宅基地

文章浏览阅读910次。问题前端用xterm.js通过websocket连接docker虚拟终端,返回的字符中包括如下字符串,其中有两个控制字符,“ESC"和"BEL” ,想通过正则表达式匹配这一段字符,然后去掉这段字符:参考文档控制字符编码表转义符对照表通过上面查询得知,"ESC"和"BEL"这两个控制符的ASCII码分别为:十进制为27和7,十六进制为0x1B和0x07,转义符分别为:\e和\a代码**注意:**直接使用ASCII码匹配是不行的,一定要用转义符才行。如下测试代码中,只有regex3才能匹_正则表达式匹配控制字符

Android RIL框架分析-程序员宅基地

文章浏览阅读1.5k次。1.RIL框架 RIL,Radio Interface Layer。本层为一个协议转换层,提供Android Telephony与无线通信设备之间的抽象层。 Android RIL位于Telephony Frameworks之下,Modem之上的,根据源码,RIL可以分为两个部分:Frameworks 框架层中的java程序,简称RILJ。HAL层中C/C++程序,简称RILC,RILC具体的又包括LibRIL、Rild和Reference-RIL这三个部分。 Andr..._ril框架

Python编程基础:第六节 math包的基础使用Math Functions_ps math function-程序员宅基地

文章浏览阅读565次。第六节 math包的基础使用前言实践前言我们通常会对数值型变量进行计算,这里我们给出一些常用的函数用于辅助你的计算过程。常用的数学计算函数均在math包。实践首先我们导入math包,并定义一个浮点型变量pi将其赋值为3.14:import mathpi = 3.14如果我们需要计算浮点型变量四舍五入后的计算结果,用函数round()即可:print(round(pi))>>> 3如果我们需要向上取整,那就需要函数math.ceil():print(math.cei_ps math function

canal异常 Could not find first log file name in binary log index file_canal could not find first log file name in binary-程序员宅基地

文章浏览阅读4.4k次,点赞3次,收藏2次。Could not find first log file name in binary log index file问题解决解决过程问题最近在使用canal来监测数据库的变化,处理变动的数据。由于有一段时间没有用了,这次启动在日志文件中看到这个异常 Could not find first log file name in binary log index file,详细信息如下:2020-12-16 19:14:42.053 [destination = tradeAndRefund , addr_canal could not find first log file name in binary log index file