10道Python题,快来看看你的基础怎么样?


为方便大家及时查看和学习AI相关课程的笔试和面试题目,小七
会在公众号上陆续发布七月在线官网的题库试题带解析,欢迎
大家及时沟通学习,有纰漏的地方也请大家及时指正,我们会
逐渐完善题库信息,给大家提供更多更好的试题资源(AI笔试
面试题库-Python题目解析2)。

官网链接:
https://www.julyedu.com/questi ... d/928
1、什么是lambda函数?它有什么好处?
解析:

lambda 表达式,通常是在需要一个函数,但是又
不想费神去命名一个函数的场合下使用,也就是
指匿名函数lambda函数:首要用途是指点短小的
回调函数
lambda [arguments]:expression

a=lambdax,y:x+y
a(3,11)
2、Python里面如何实现tuple和list的转换?
解析:

直接使用tuple和list函数就行了,type()
可以判断对象的类型

3、请写出一段Python代码实现删除一个
list里面的重复元素
解析:

1,使用set函数,set(list)
2,使用字典函数,

a=[1,2,4,2,4,5,6,5,7,8,9,0]
b={}
b=b.fromkeys(a)
c=list(b.keys())
c
4、Python里面如何拷贝一个对象?(赋值,
浅拷贝,深拷贝的区别)
解析:

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

浅拷贝:创建一个新的对象,但它包含的是对
原始对象中包含项的引用(如果用引用的方式
修改其中一个对象,另外一个也会修改改变)
{1,完全切片方法;2,工厂函数,如list();
3,copy模块的copy()函数}

深拷贝:创建一个新的对象,并且递归的复制
它所包含的对象(修改其中一个,另外一个不
会改变){copy模块的deep.deepcopy()函数}

5、输入一个字符串返回满足以下条件的字
符串找出与字符串的第一个字母相同的字
母,把它们替换成 '*',除了第一个字母
本身以外例如: 输入'babble', 返回
'ba**le'
解析:

s=input('input:')

for i in range(1,len(s)):
print(i)
if s[0]==s[i]:
s=s[:i]+'*'+s[i+1:]
print(s)

6、- 输入一个字符串 返回满足以下条件的
字符串
- 由字符串的最前面两个字母和最后两个
字母组成的字符串。
- 例如: 'spring' 返回 'spng',
'is' 返回 'is’
- 当输入的字符串长度小于2时,返回
空字符串
解析:

s=input('input:')
l=len(s)
if l<2:
print('')
else :
if l>3:
s=s[:2]+s[-2:]
print(s)

7、- 输入一个字符串,把字符串拆分成两
个等分
- 如果字符串长度是偶数,前一半和后
一半的长度是相同的
- 如果字符串长度是奇数,则多出的一
个字符加到前一半,
如:'abcde',前一半是'abc',后一半
是'de'
解析:

s=input('input:')
l=len(s)
m=l//2
if l%2>0:m+=1
print(s[:m],s[m:])

8、- 判断是否为回文
- 提示:回文:62426是回文数字
解析:

s=input('pls input a string of
numbes:')
s_=s[::-1]
answer='isn\'t'
if s_==s:
answer='is'
print(s,answer,'Palindrome number')

9、- 求两个数字之间的素数
- 素数:只能被1及自己整除的数,
如3,7,13,23等
解析:

for i in range(6,33+1):
for j in range(2,i+1):
if i%j==0 and j

10、Python是如何进行内存管理的?
解析:

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

(一)对象的引用计数机制
Python内部使用引用计数,来保持追踪内存中的
对象,所有对象都有引用计数。

引用计数增加的情况:
(1)一个对象分配一个新名称
(2)将其放入一个容器中(如列表、元组或字典)

引用计数减少的情况:
(1)使用del语句对对象别名显示的销毁
(2)引用超出作用域或被重新赋值
sys.getrefcount( )函数可以获得对象的当前
引用计数多数情况下,引用计数比你猜测得要
大得多。对于不可变数据(如数字和字符串)
,解释器会在程序的不同部分共享内存,以便
节约内存。

(二)垃圾回收
(1)当一个对象的引用计数归零时,它将被垃圾
收集机制处理掉。
(2)当两个对象a和b相互引用时,del语句可以
减少a和b的引用计数,并销毁用于引用底层
对象的名称。然而由于每个对象都包含一个
对其他对象的应用,因此引用计数不会归零
,对象也不会销毁。(从而导致内存泄露)。
为解决这一问题,解释器会定期执行一个循
环检测器,搜索不可访问对象的循环并删除
它们。

(三)内存池机制
Python提供了对内存的垃圾收集机制,但是它
将不用的内存放到内存池而不是返回给操作系
统。
1,Pymalloc机制。为了加速Python的执行效率
,Python引入
了一个内存池机制,用于管理对小块内存的申
请和释放。
2,Python中所有小于256个字节的对象都使用
pymalloc实现的分配器,而大的对象则使用系
统的malloc。
3,对于Python对象,如整数,浮点数和List,
都有其独立的私有内存池,对象间不共享他们
的内存池。也就是说如果你分配又释放了大量
的整数,用于缓存这些整数的内存就不能再分
配给浮点数。

为了让大家顺利转行AI相关岗位,七月在线特意
推出机器学习集训营课程,迄今为止,「机器学习
集训营」已经举办了四期,每一期都涌现出了不少
优秀offer,特别是上一期很多同学从Java、
Android、iOS等传统IT行业成功转岗AI拿到年薪
三四十万,部分甚至超过四十万拿到五十万。

本第五期,在第四期的基础上,除了继续维持
“入学测评、直播答疑、布置作业、阶段考试、
毕业考核、一对一批改、线上线下结合、CPU
&GPU双云平台、面试辅导、就业推荐”十位
一体的教学模式,本期特地推出机器学习工程
师的联合认证。且线下在北京、上海、深圳、
广州、杭州、沈阳、济南、郑州、成都的基
础上,新增武汉、西安两个线下点,十一城
同步开营。

现推出特惠价格,2人及2人以上组团报名,
可各减500元。想组团者请加微信客服:
julyedukefu_02。

0 个评论

要回复文章请先登录注册

返回顶部