Python面试题 看看大家能做出来几道?

时间:2022-12-08 14:21:06
Python面试题:Python是如何进行内存管理的?
如何反序的迭代一个序列?how do I iterate over a sequence in reverse order
Python里面如何实现tuple和list的转换?
Python面试题:请写出一段Python代码实现删除一个list里面的重复元素
Python文件操作的面试题
Python面试题:Python里面如何生成随机数?
Python面试题:如何用Python来发送邮件?

24 个解决方案

#1


哦?
哪的面试题?

#2


还有python的招聘???哪里??我来试试

#3


Python提供了对内存的垃圾收集机制,但是它将不用的内存放到内存池而不是返回给操作系统。
Python中所有小于256个字节的对象都使用pymalloc实现的分配器,而大的对象则使用系统的 malloc。另外Python对象,如整数,浮点数和List,都有其独立的私有内存池,对象间不共享他们的内存池。也就是说如果你分配又释放了大量的整数,用于缓存这些整数的内存就不能再分配给浮点数。

#4


很容易嘛

#5


IT公司面试手册上的 摘抄了几个 上面还有很多 自己去看吧

#7


引用 3 楼 darkchampion 的回复:
Python提供了对内存的垃圾收集机制,但是它将不用的内存放到内存池而不是返回给操作系统。
 Python中所有小于256个字节的对象都使用pymalloc实现的分配器,而大的对象则使用系统的 malloc。另外Python对象,如整数,浮点数和List,都有其独立的私有内存池,对象间不共享他们的内存池。也就是说如果你分配又释放了大量的整数,用于缓存这些整数的内存就不能再分配给浮点数。

学习

#8


e
给应届生的公司面试题吧

#9


开始喜欢python了

#10


這麼說python開始慢慢的脫離傳統腳本語言的概念了?

#11


这么难,不懂

#12


我对其中的两题谈谈我的看法:
1. Python面试题:请写出一段Python代码实现删除一个list里面的重复元素

LZ的方法绝对是没问题的,不过我觉得有点太传统了,Python就得有点特色吧?呵呵

我的方法是利用map的fromkeys来自动过滤重复值,map是基于hash的,大数组的时候应该会比排序快点吧:

>>> a=[1,2,3,3,4,5,1,1]
>>> b={}
>>> b=b.fromkeys(a)
>>> b
{1: None, 2: None, 3: None, 4: None, 5: None}
>>> a=list(b.keys())
>>> a
[1, 2, 3, 4, 5]


2. 如何反序的迭代一个序列?
我的看法是同样没有用Python的特色。
>>> a = [1, 2, 3, 4, 5]
>>> for x in a[-1::-1]:
...     print x,



说得不对的大家多批评。

#13


学习

#14


引用 12 楼 thy38 的回复:
我对其中的两题谈谈我的看法:
 1.Python面试题:请写出一段Python代码实现删除一个list里面的重复元素

 LZ的方法绝对是没问题的,不过我觉得有点太传统了,Python就得有点特色吧?呵呵

 我的方法是利用map的fromkeys来自动过滤重复值,map是基于hash的,大数组的时候应该会比排序快点吧:
Python code>>> a=[1,2,3,3,4,5,1,1]>>> b={}>>> b=b.fromkeys(a)>>> b
{1: None,2: None,3: None,4: None,5: None}>>> a=list(b.keys())>>> a
[1,2,3,4,5]

 2.如何反序的迭代一个序列?
 我的看法是同样没有用Python的特色。
Python code>>> a= [1,2,3,4,5]>>>for xin a[-1::-1]:
...print x,


 说得不对的大家多批评。


学习

#15


基础才是王道

#16


试了下,这样也可以
>>> for x in a[::-1]:
 ...      print x

#17


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

a = [1,2,3,3,4,5,1,1]
a = list(set(a))                    # 用 set 應該最簡單

#18


引用 17 楼 gtcoffee 的回复:
请写出一段Python代码实现删除一个list里面的重复元素

a = [1,2,3,3,4,5,1,1]
a = list(set(a))                    # 用 set 應該最簡單


受教了!

#19


我一般也是用set
引用 17 楼 gtcoffee 的回复:
请写出一段Python代码实现删除一个list里面的重复元素

 a = [1,2,3,3,4,5,1,1]
 a = list(set(a))                    # 用 set 應該最簡單

#20


对不起,我来晚了1年

#21


reverse:

 

s = raw_input("Enter a string: ")
rev = ""
for i in range(len(s)):
    rev = rev + s[(i+1)*-1]

print "The reverse is: " + rev

#22


穿越了

#23


我迟到2年了, 来学习的

#24


学习了,很多库记不住啊

#1


哦?
哪的面试题?

#2


还有python的招聘???哪里??我来试试

#3


Python提供了对内存的垃圾收集机制,但是它将不用的内存放到内存池而不是返回给操作系统。
Python中所有小于256个字节的对象都使用pymalloc实现的分配器,而大的对象则使用系统的 malloc。另外Python对象,如整数,浮点数和List,都有其独立的私有内存池,对象间不共享他们的内存池。也就是说如果你分配又释放了大量的整数,用于缓存这些整数的内存就不能再分配给浮点数。

#4


很容易嘛

#5


IT公司面试手册上的 摘抄了几个 上面还有很多 自己去看吧

#6


#7


引用 3 楼 darkchampion 的回复:
Python提供了对内存的垃圾收集机制,但是它将不用的内存放到内存池而不是返回给操作系统。
 Python中所有小于256个字节的对象都使用pymalloc实现的分配器,而大的对象则使用系统的 malloc。另外Python对象,如整数,浮点数和List,都有其独立的私有内存池,对象间不共享他们的内存池。也就是说如果你分配又释放了大量的整数,用于缓存这些整数的内存就不能再分配给浮点数。

学习

#8


e
给应届生的公司面试题吧

#9


开始喜欢python了

#10


這麼說python開始慢慢的脫離傳統腳本語言的概念了?

#11


这么难,不懂

#12


我对其中的两题谈谈我的看法:
1. Python面试题:请写出一段Python代码实现删除一个list里面的重复元素

LZ的方法绝对是没问题的,不过我觉得有点太传统了,Python就得有点特色吧?呵呵

我的方法是利用map的fromkeys来自动过滤重复值,map是基于hash的,大数组的时候应该会比排序快点吧:

>>> a=[1,2,3,3,4,5,1,1]
>>> b={}
>>> b=b.fromkeys(a)
>>> b
{1: None, 2: None, 3: None, 4: None, 5: None}
>>> a=list(b.keys())
>>> a
[1, 2, 3, 4, 5]


2. 如何反序的迭代一个序列?
我的看法是同样没有用Python的特色。
>>> a = [1, 2, 3, 4, 5]
>>> for x in a[-1::-1]:
...     print x,



说得不对的大家多批评。

#13


学习

#14


引用 12 楼 thy38 的回复:
我对其中的两题谈谈我的看法:
 1.Python面试题:请写出一段Python代码实现删除一个list里面的重复元素

 LZ的方法绝对是没问题的,不过我觉得有点太传统了,Python就得有点特色吧?呵呵

 我的方法是利用map的fromkeys来自动过滤重复值,map是基于hash的,大数组的时候应该会比排序快点吧:
Python code>>> a=[1,2,3,3,4,5,1,1]>>> b={}>>> b=b.fromkeys(a)>>> b
{1: None,2: None,3: None,4: None,5: None}>>> a=list(b.keys())>>> a
[1,2,3,4,5]

 2.如何反序的迭代一个序列?
 我的看法是同样没有用Python的特色。
Python code>>> a= [1,2,3,4,5]>>>for xin a[-1::-1]:
...print x,


 说得不对的大家多批评。


学习

#15


基础才是王道

#16


试了下,这样也可以
>>> for x in a[::-1]:
 ...      print x

#17


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

a = [1,2,3,3,4,5,1,1]
a = list(set(a))                    # 用 set 應該最簡單

#18


引用 17 楼 gtcoffee 的回复:
请写出一段Python代码实现删除一个list里面的重复元素

a = [1,2,3,3,4,5,1,1]
a = list(set(a))                    # 用 set 應該最簡單


受教了!

#19


我一般也是用set
引用 17 楼 gtcoffee 的回复:
请写出一段Python代码实现删除一个list里面的重复元素

 a = [1,2,3,3,4,5,1,1]
 a = list(set(a))                    # 用 set 應該最簡單

#20


对不起,我来晚了1年

#21


reverse:

 

s = raw_input("Enter a string: ")
rev = ""
for i in range(len(s)):
    rev = rev + s[(i+1)*-1]

print "The reverse is: " + rev

#22


穿越了

#23


我迟到2年了, 来学习的

#24


学习了,很多库记不住啊