10道Python题,快来看看你的基础怎么样?
16lz
2021-03-26
方便大家及时查看和学习AI相关课程的笔试和面试题目,小七会在公众号上陆续发布七月在线官网的题库试题带解析,欢迎大家及时沟通学习,有纰漏的地方也请大家及时指正,我们会逐渐完善题库信息,给大家提供更多更好的试题资源(AI笔试面试题库-Python题目解析2)。
官网链接:
https://www.julyedu.com/question/big/kp_id/28/ques_id/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//2if l%2>0:m+=1print(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双云平台、面试辅导、就业推荐”十位一体的教学模式,本期特地推出机器学习工程师的联合认证。且线下在北京、上海、深圳、广州、杭州、沈阳、济南、郑州、成都的基础上,新增武汉、西安两个线下点,十一城同步开营。
更多相关文章
- js引用,常用数据类型,变量与常量,函数(高阶,箭头,立即执行),作用域与闭包
- flea-frame-db使用之JPA封装介绍
- 开源项目,动作识别的开源框架Sense + 多对象目标跟踪神器火热出炉
- php类的引用与mysql基础
- JavaScript对象与其复制清除方法简析
- 不知道JVM逃逸分析?看这篇文章就够了!
- 你真的会写java吗?
- 3-24(类与对象的自我总结)
- synchronized 是可重入锁吗?为什么?