python初级工程师面试题_Python工程师面试题
第1题:列表和元组有什么相同点?
相同点:
都是序列都可以存储任何数据类型可以通过索引访问
第2题: 如何随机打乱列表中元素,要求不引用额外的内存空间?
用 random 包中的 shuffle() 函数来实现
import randomrandom.shuffle(你的列表)# 举个例子:L1 = [1, 3, 5, 7]random.shuffle(L1)
第3题: is 和 == 的区别?
hon中对象包含的三个基本要素,分别是:id(身份标识)、type(数据类型)和value(值)
id 身份标识,就是在内存中的地址
完整的举例
>>> a = 'hello'>>> b = 'hello'>>> print(a is b)True>>> print(a==b)True>>> a = 'hello world'>>> b = 'hello world'>>> print(a is b)False>>> print(a == b)True>>> a = [1,2,3]>>> b = [1,2,3]>>> print(a is b)False>>> print(a == b)True>>> a = [1,2,3]>>> b = a>>> print(a is b)True>>> print(a == b)True>>>
==是python标准操作符中的比较操作符,用来比较判断两个对象的value(值)是否相等is也被叫做同一性运算符(对象标示符),这个运算符比较判断的是对象间的唯一身份标识,也就是id(内存中的地址)是否相同
我们在检查 a is b 的时候,其实相当于检查 id(a) == id(b)。而检查a == b 的时候,实际是调用了对象 a 的 __eq()__ 方法,a == b 相当于 a.__eq__(b)。
这里还有一个问题,为什么 a 和 b 都是 "hello" 的时候,a is b 返回True,而 a 和 b都是 "hello world" 的时候,a is b 返回False呢?
这是因为前一种情况下Python的字符串驻留机制起了作用。对于较小的字符串,为了提高系统性能Python会保留其值的一个副本,当创建新的字符串的时候直接指向该副本即可。
所以 "hello" 在内存中只有一个副本,a 和 b 的 id 值相同,而 "hello world" 是长字符串,不驻留内存,Python中各自创建了对象来表示 a 和 b,所以他们的值相同但 id 值不同。
试一下当a=247,b=247时它们的id还是否会相等。事实上Python 为了优化速度,使用了小整数对象池,避免为整数频繁申请和销毁内存空间。而Python 对小整数的定义是 [-5, 257),只有数字在-5到256之间它们的id才会相等,超过了这个范围就不行了。
>>> a = 247>>> b = 247>>> print(a is b)True>>> a = 258>>> b = 258>>> print(a is b)False>>>
is 是检查两个对象是否指向同一块内存空间,而 ==是检查他们的值是否相等。is比==更加严格
第4题: *args,**kwargs
python*args,**kwargs
函数传递中 *args, **kwargs含义是什么
用来处理可变参数*args 被打包成tuple**kwargs被打包成为dict
第5题:如何定义自己的异常
class MyException(Exception):passtry:raise MyException('my exception')except Exception as e:print(e)输出:my exception
python初级工程师面试题_Python工程师面试题相关推荐
- python五个月工资多少_Python工程师工资多少
百度CEO曾表述:靠移动互联网的风口现已没有可能再出现独角兽了,由于市场现已进入了一个相对平稳的发展阶段,互联网人口渗透率现已超过了50%.而未来的机会在人工智能.确实互联网巨头公司在人工智能领域投入 ...
- python做什么方向好_Python工程师的择业方向有哪些?你想好做什么工作了吗?
Python是一门非常优秀的编程语言,功能强大.语法简单.上手容易,很适合初学者学习,只要愿意学习,通过自己努力多下功夫都是可以进行学习的. 现在Python在市场上需求量非常高,应用区域广泛,就业岗 ...
- python月薪25k+的名企_Python 工程师薪资再飙升,不止25K了
Python 方向岗位的招聘人数需求以及薪资均在水涨船高.先来看市场需求,据各大招聘网站数据统计,平均每月招聘人数需求 12331 人, 其中 10 月是招聘旺季,需求最多,高达 20600 人. 而 ...
- python工程师认证证书_python工程师-day83
1.drf 的用户认证组件 (1)models from django.db import models # Create your models here. class User(models.Mo ...
- python高阶面试题_Python 爬虫面试题 170 道:2019 版
通过本场 Chat,你将获得如下知识点:掌握 Python 的基础语法 语法常见的 Python 应用场景 掌握 Python 闭包的使用以及装饰器的使用 生成器和迭代器的使用 常见的设计模式的使用 ...
- python快乐数字怎么表达_Python经典面试题:这些面试题你会了吗?
前言 什么?你要去找工作?先别急着找工作,先把下面的python面试题先给看了吧,不然你就只是去面试而不是找工作.话说不打没准备的仗,下面这些基本的面试题都不会你怎么可能找到工作呢?还是先把下面的东西 ...
- python语法面试题_Python语法面试题
函数装饰器有什么作用?请列举出至少三个并举出一些实例? 装饰器本质上是一个python函数,它可以在让其他函数在不需要做任何代码的变动的前提下增加额外的功能. 装饰器的返回值也是一个函数的对象,它经常 ...
- python 爬虫面试题_Python爬虫面试题
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 1.tcp和udp的区别? TCP(Transmission Control Protocol,传输控制协议)是面向连接的协议,也就是说,在收发数据前,必 ...
- 阿里云python面试题_Python金典面试题
在Linux电脑上安装python,ipython,pycharm专业版本软件; (1)在Python官方网站上下载所安装包 (2)安装 安装python[root@localhost code1]# ...
- python自动化常见面试题_Python基础面试题80问 Python自动化开发
1. 为什么学习Python? 2. 通过什么途径学习的Python? 3. Python和Java.PHP.C.C#.C++等其他语言的对比? 4. 简述解释型和编译型编程语言? 5. Python ...
最新文章
- [干货]Kaggle热门 | 用一个框架解决所有机器学习难题
- 渗透各行各业,这家RPA外企宣布全面进军中国市场
- 我,25岁,高中时创立的自动驾驶技术公司即将上市,估值34亿美元
- 使用Composer安装Laravel步骤
- dockerfile arg_Dockerfile最佳实践
- 1837Balance
- image是否有disabled属性_Vue学习笔记 模板语法、计算属性
- Boring Partition(CF-239D)
- 机器学习的开源工具-开源程序-研究工具
- 【直播预告】阿里特邀专家关键:Java无锁集合代码分析...
- Ambari-Agent心跳丢失:Failed to connect to https://xx.xx.xx:8440/ca due to
- java 反射机制中的 Filed (属性反射机制)
- 输入年月日实现计算这是一年的第几天
- 光滑曲线_光滑曲线可求长定理证明
- JLX256160 液晶屏串行 无字库
- 项目管理涉及到的文档
- 物联网的涵义、架构、技术和产业概述
- i5 11300h和r5 4600h的差别大吗
- RabbitMQ中重试机制的坑
- 中班音乐活动计算机反思,中班音乐活动教案及反思