python面试题(面试重点)

1.简述列举了解的编程语言及语言间的区别?

编译型语言:一次性全部编译成二进制码,再去运行

解释型语言:编译一句,运行一句

一、python 解释型 简洁高效,容易上手

二、 java 混合型 (JVM、JIT编译器)学习成本,开发周期慢,web方向偏重

三、 c 编译型 属于底层语言,只有面向过程,没有面向对象

四、c++ 编译型 属于底层语言,既有面向过程,也有面向对象

五、go 编译型 应用在区块链,高并发高可用,游戏方向

需要代码的同学可以添加群624440745

2.列举Python2和Python3的区别?

python2:

一、print “123”

二、range 返回 list

三、默认编码 --ascii码(无中文)

四、两种类 经典类 和新式类

class Car() : pass 经典类(多继承当中搜索原则以深度优先)

class Car(object) : pass 新式类(多继承当中搜索原则以广度优先)

类.mro() => 继承顺序列表

五、除法:结果是整型

六、int,long(长整型)

七、raw_input => 等价于 python3 input,如光写input 就得输入数字

python3:

一、print()

二、range 返回的是可迭代对象

三、默认编码 --utf-8

四、都是新式类

五、除法:结果是小数(无论整数相除还是浮点数相除)

六、int

七、input

3.看代码写结果

v1 = 1 or 2 输出: 1
v2 = 3 and 7 or 9 and 0 输出: 7

逻辑运算符优先级 () > not > and > or

逻辑短路

and 全真则真,一假则假
or 一真则真,全假则假

True or 表达式 => True (单个运算符和多个运算符的情况,都可以直接判定结果)
False and 表达式 => False(单个运算符的时候可以)

布尔值为假的十种情况: bool() => False

0,0.0,False,0j,’’,[],(),set(),{},None

v1 = 1 or 2
print(v1) # 1

v2 = 3 and 7 or 9 and 0

v2 = 7 or 0

v2 = 7

print(v2)

“”"
数据类型:
Number(int , float , complex , bool)
容器:str list tuple set dict

复数 : 用在数据分析,人工智能中

complexvar = 3 + 4j
3 : 实数
4j: 虚数
j: 如果有一个数,他的平方等于-1 ,那么这个数就是j,科学家认为有,表达高精度类型
“”"

4.比较以下值有什么不同?

v1 = [1,2,3] 数字
v2 = [(1),(2),(3)] 数字 括号写些什么类型数据,就是什么数据
v3 = [(1,),(2,),(3,)] 元组


逗号才是区分是否是元组的标识符

v1 = [1,2,3] # 列表[int , int , int]
v2 = [(89),(2.12),(“abc”)] # [int , float , str]
v3 = [(1,),(2,),(3,)] # [tuple,tuple,tuple,tuple]
res = () # 表达空元组

5.用一行代码实现数值交换。

python 特有

a = 1
b = 2
a,b = b,a

通用

tmp = a
a = b
b = tmp

6.Python中单引号、双引号、三引号的区别?

单双引号没有区别,三引号可以支持跨行
在互相嵌套时需注意:里外不能使用相同的引号

7.is和==的区别

is 是判断两边内存地址是否相同
== 判断两边的值是否相同

8.python里如何实现tuple和list的转化?

int float complex bool str list tuple set dict

list(数据)
tuple(数据)

9.如何实现字符串 name='老男孩’的反转?

name[start🔚step] 语法

name[::-1]

10.两个set如何获取交集、并集、差集?

交集 &
intersection
差集 -
difference
并集 |
union
对称差集 ^
symmetric_difference

11.那些情况下, y != x - (x-y)会成立?

“”"
非空集合且不为子父关系的两个集合
“”"
y != x-(x-y)
x = {“a”,“b”,“c”}
y = {“b”,“d”}

if y != x-(x-y):
print(“ok”)

12.Python中如何拷贝一个对象?

import copy

针对于列表的拷贝,还可以使用[:] , [::],浅拷贝的一种方式

lst1 = [1,2,3]
lst2 = lst1[:]
lst1.append(4)
print(lst2)

13.简述 赋值、浅拷贝、深拷贝的区别?

#赋值 : 将变量和值在内存中形成映射指向关系
#浅拷贝 : 只拷贝第一级里所有的元素 copy.copy
#深拷贝 : 为所有层级的元素都单独开辟新空间 copy.deepcopy() (地址:原不可变数据只是暂时的指向,可变的数据独立开辟新空间)
“”"
可变数据: list set dict
不可变数据: int float bool complex str tuple
“”"

import copy
lst1 = [1,2,3,[4,5,6]]
lst2 = copy.deepcopy(lst1)
lst1[0] = 100
print(lst1)
print(lst2)

print(id(ls

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在网上搜索“Python面试题下载”,会得到许多可供下载的资源。这些资源包含了各类Python面试题和答案,可以帮助准备Python相关职位的面试。下载这些面试题的好处是可以在自己的时间里进行练习和准备,提高自己的面试技巧和知识水平。 Python面试题通常分为基础、进阶和算法三个部分。基础部分主要包括Python语言的基本语法、数据类型、控制流程、函数等内容;进阶部分则涵盖了Python的高级特性、模块与包、面向对象编程等内容;算法部分主要考察编写判断、循环、递归等算法的能力。 通过下载Python面试题资源,可以更好地了解常见的面试考点和问题,有助于自我评估和提高编程能力。此外,一些面试题还会附带答案和解析,可以对比自己的答案,进一步加深对Python知识的理解。 使用下载的面试题进行练习时,可以尝试按照规定的时间限制来回答问题,模拟真实的面试环境。这样可以提高解决问题的速度和有效性,并培养对压力的适应能力。在处理问题的过程中,可以借助文档和互联网资源来查找相关的知识和方法,同时也要积极思考和整理,以便更好地掌握和运用这些知识。 总之,下载Python面试题可以帮助提升自己的Python编程技能和面试准备能力。通过练习和理解这些面试题,可以更好地应对未来的面试挑战,增加自己的就业竞争力。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值