Python面试题集合

天高草长

来自: 天高草长(一花一世界) 2011-07-20 17:31:23

×
加入小组后即可参加投票
  • zero

    zero (呦呦鹿鸣) 2011-07-20 17:35:37

    m

  • 才疏学浅一码农

    才疏学浅一码农 (笑容 你快回来) 2011-07-20 17:37:02

    mt

  • thinker

    thinker 2011-07-20 23:04:52

    初学,看上去有好多不会,看来要多下一番功夫。

  • 蒙面骑士

    蒙面骑士 (喵呜喵呜) 2011-07-21 00:10:40

    Python是如何进行内存管理的?
    gc, 引用计数。
    什么是lambda函数?它有什么好处?
    匿名函数。没啥好处。
    how do I iterate over a sequence in reverse order
    reversed
    Python是如何进行类型转换的?
    显式类型转换
    Python里面如何实现tuple和list的转换?
    tuple(),list()
    请写出一段Python代码实现删除一个list里面的重复元素
    lambda x: list(set(x))
    Python如何实现单例模式?其他23种设计模式python如何实现?
    python不需要这些模式
    Python里面如何拷贝一个对象?
    没有统一的办法。copy.deepcopy
    介绍一下except的用法和作用?
    这个就不说了
    Python中pass语句的作用是什么?
    pass
    介绍一下Python下range()函数的用法?
    咋介绍?
    如何用Python来进行查询和替换一个文本字符串?
    re.find re.sub
    Python里面search()和match()的区别?
    说的re.search和re.match?忘记了
    用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别?
    后者匹配<>
    Python里面如何生成随机数?
    random
    如何用Python来发送邮件?
    山寨mail协议。os.system sendmail
    有两个序列a,b,大小都为n,序列元素的值任意整形数,无序;
    要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小。
    1. 将两序列合并为一个序列,并排序,为序列Source
    2. 拿出最大元素Big,次大的元素Small
    3. 在余下的序列S[:-2]进行平分,得到序列max,min
    4. 将Small加到max序列,将Big加大min序列,重新计算新序列和,和大的为max,小的为min。

    Python如何定义一个函数?
    def
    lambda
    object with __call__
    有没有一个工具可以帮助查找python的bug和进行静态的代码分析?
    pycheck pylint
    如何在一个function里面设置一个全局的变量?
    global

  • 蒙面骑士

    蒙面骑士 (喵呜喵呜) 2011-07-21 09:59:36

    lambda表达式在python里面有啥好处?基本接近于零。
    删除同样元素,哪里说要保序了?
    这就是你要这么问我就这么回答一下。copy这个东西,难道不是只有copy的人知道自己要干啥吗?实际上定义一下啥叫copy都不可能。至于说单例,我真觉得没用,你要
    确切知道自己要几个实例,从工程上保证就行了,搞个类变量计数也好什么也好,python里面这样山寨单例没有不能fuck的,实际上需要这样吗?我不是反对python里面搞设计模式,而是普遍的反对设计模式。
    后面那几题我也没有回答。像search match的区别,开一个ipython,问号两次就能解决的。非要出成面试题。

  • lichray

    lichray (en bouton) 2011-07-21 12:12:45

    @蒙面骑士

    lambda 表达式在 python 不但有用,可以说是举足轻重的地位。学过 lambda 演算之后,可以做到只用 lambda 写出单表达式的程序。

    常见的用途:在策略模式中表达一个策略,包装函数以 adapt 它的接口,创建 closure 把变量绑定在一个 scope 内(Python 的变量是没有 closure 的),和 map/filter/reduce 配合按模式生成/转换需要的数据。等等等等。

  • lichray

    lichray (en bouton) 2011-07-21 12:20:33

    @蒙面骑士

    用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别?
    后者匹配<>

    这个搞笑了。两者都匹配 <>。不同的是前者是贪婪匹配,会从头到尾匹配 <a>asdjask</a>,而后者是懒惰匹配,发现第一个 > 时就会停下。

  • 蒙面骑士

    蒙面骑士 (喵呜喵呜) 2011-07-21 12:28:42

    @lichray
    正则这个是我错了。

  • 蒙面骑士

    蒙面骑士 (喵呜喵呜) 2011-07-21 12:35:15

    @lichray
    lambda表达式,你是讲这么个意思么?
    def func(arg):
    return lambda x:exp(arg)
    ?
    为啥不可以:
    def func(arg):
    def f():
    return exp(arg)
    return f
    ?
    map/reduce/filter一样.
    我说lambda这个关键字在python里面基本没用是就实用上说的,当然,定义短小
    函数少打几个字貌似也算有用。lambda演算我学过,但是lambda关键字在python
    里面并没有那么基础的地位。只是一个小小的语法糖。

  • lichray

    lichray (en bouton) 2011-07-21 12:50:26

    当然可以。但这相当于你在名字空间里增加了一个名字,我不喜欢这样。

    你举了一个调整函数接口的例子。举一个绑定名字的例子:

    (lambda x: lambda y: x ** y)(outer_x)
    可以简写为
    (lambda x = outer_x: lambda y: x ** y)()

    这样就把 x 绑定到了内部函数的 closure 上。
    a=[]
    for i in range(1, 10):
    ____a.append((lambda x = i: lambda y: x ** y)())

    for f in a:
    ____print f(2)

    只有把 i 绑定到 closure 上,上面的例子才能成立,否则所有的函数获得的都是最后一个 i 的值。
    for i in range(1, 10):
    ____a.append(lambda y: i ** y)
    上面的就是这种错误。

  • 蒙面骑士

    蒙面骑士 (喵呜喵呜) 2011-07-21 13:00:13

    @lichray
    同意你说的,我也用lambda,eval啥挺多的,可是我不赞成过分强调这些东西,这个
    更多的也就是给我这样的懒人省几行代码。
    至于你说往名字空间增加名字的问题,我觉得像python这样有模块机制,有__all__
    的,这个没有啥大不了的,当然你有洁癖除外。
    我现在特别想要一种有模块机制的c++。

  • lichray

    lichray (en bouton) 2011-07-21 13:09:55

    @蒙面骑士

    Python 的名字空间比一般的脚本语言是安全一点,因为它在赋值时不做名字查找,不能直接给 scope chain 上游赋值。但也有弱点,因为只有函数拥有 scope 而普通的 statement 没有,比如 if。在 if 中声明的变量出了 if 照用,在 if 中 用 def 声明的函数出了 if 可以被覆盖。所以在编写函数是我建议限制名字的使用。当然,过度使用技巧规避 statement 来使用 lambda 就不值得了。

  • lichray

    lichray (en bouton) 2011-07-21 14:14:27

    另外关于 except。except 只是用来处理异常的。但在 Python 中,生成器的结束判定靠的是异常,在函数中使用 yield (可以用于处理 transaction 型的复杂逻辑)会产生一个生成器,所以... except 用途广泛。这和 java 不同。Java 专家非常反对用异常处理“正常”逻辑,但在 Python 中这再正常不过了。

  • Shadow.Tang+

    Shadow.Tang+ (WWW.shadowlin.CN) 2011-07-21 15:14:18

    mark

  • 牛皮糖

    牛皮糖 (最后的夏天) 2011-07-21 18:32:56

    楼主,我想知道这是那些公司的面试题集合

  • 小白加黑

    小白加黑 (拍照太快不动脑,我改) 2011-07-21 18:59:36

    Mark

  • Itachi_zhq

    Itachi_zhq 2011-07-21 20:21:05

    mark

  • 天高草长

    天高草长 (一花一世界) 2011-07-22 09:48:40

    @牛皮糖

    从网上搜罗的,不是那个特定公司的~

  • 执迷不悔

    执迷不悔 2011-07-22 10:49:11

    @蒙面骑士
    发送email, Python自带email\smtp模块

  • 牛皮糖

    牛皮糖 (最后的夏天) 2011-07-23 22:17:17

    @高天蒲 噢,十分感谢,楼主有心啊。对于马上要毕业的童鞋来说真是及时雨啊。我做了一下,其他的在Python书上基本都遇到过,除了第一个内存管理不太懂,之前在豆瓣某工程师的Blog曾看到类似的Python内存管理文章,回头恶补。

  • TNT

    TNT (Light into Bonds) 2011-07-23 23:02:38

    mark

  • 驯良名师

    驯良名师 (谁怜芳最久,春露到秋风。) 2011-07-24 09:45:18

    mark

  • 我叫红领巾

    我叫红领巾 2011-07-25 13:04:37

    不知道啊

  • 其实不爱吃拉面

    其实不爱吃拉面 2011-07-25 13:10:10

    额。。。不是针对人的意思,感觉现在这个集合里的题目参差不齐,有些出的真没啥水平。。建议lz再多过滤过滤

  • 天高草长

    天高草长 (一花一世界) 2011-07-25 13:29:09

    Ls,请列举一些? 或者咱们共同编辑整理?

  • 1001夜

    1001夜 (知行合一) 2011-07-25 13:39:47

    哈哈

  • 细胞壁

    细胞壁 2011-08-01 22:31:25

    关于“Python是如何进行内存管理的? ” 楼主提供的51cto的链接完全看不懂懂啊。

    我又找到两个页面感觉容易点的:

    Memory Management and Limits

    http://changingcode.wordpress.com/2007/12/14/memory-management-in-python/

    Memory management in python

    http://www.doughellmann.com/PyMOTW/sys/limits.html

  • wosuopu

    wosuopu 2011-08-03 13:07:25

    看了下,好多都不会啊

  • 牛皮糖

    牛皮糖 (最后的夏天) 2011-08-03 16:37:01

    Python高级编程的12.3讲了Python处理内存方式

  • Joe

    Joe 2011-08-04 12:02:54

    好多都不会啊+1

  • [已注销]

    [已注销] 2011-08-08 21:14:27

    牛X的讨论

  • 微光

    微光 (活蹦乱跳) 2011-09-24 22:22:03

    mark

  • 清风梦月

    清风梦月 (为Python而来) 2011-09-25 11:52:20

    好, 有参考价值!

  • coneagoe

    coneagoe 2011-09-26 09:59:11

    mark

  • 匠

    (自由和单纯的美太美好而匆匆流逝) 2011-09-28 20:39:24

    这个有用。

  • marshalz

    marshalz (废物) 2011-10-01 10:43:28

    这个必须得顶。

  • 流沙者

    流沙者 (流沙者,忆追逝,惜拥有!) 2011-10-01 10:45:39

    m

  • luufy

    luufy 2011-10-02 00:12:30

    m

  • 青悠子

    青悠子 (青青子衿 悠悠我心) 2011-10-04 18:23:04

    其实面试题是对基础知识的考试。
    先收藏下 晚上回来研究这些基础问题。

  • CaandCa

    CaandCa 2011-10-22 17:30:24

    mark

  • 青春被狗吃了

    青春被狗吃了 2011-10-22 23:39:01

    mark

  • cassvin

    cassvin (Leon Xu @HUST) 2011-10-23 01:46:10

    m

  • plume

    plume (礼拜六加班男) 2011-10-28 21:48:39

    m

  • yingkongyu

    yingkongyu (纷扰尘世中,潇洒走一回) 2011-11-03 00:38:54

    thanks

  • snow

    snow 2011-11-14 00:13:25

    都会用,不知道能不能面试上

  • Mel

    Mel (沉住气) 2011-11-14 08:30:04

    mark

  • 老钱

    老钱 (感性让我亲近,理性让我排斥) 2012-01-17 11:12:32

    Python中pass语句的作用是什么?
    pass


  • 锦城客

    锦城客 2012-01-19 05:18:38

    mark一下,很又用

  • melody

    melody (红马6) 2012-02-27 15:22:00

    mark

  • goodspeed

    goodspeed (会用心唱歌) 2012-02-28 11:02:45

    初学mark

  • 斯文L.M

    斯文L.M (此去经年) 2012-02-28 11:06:30

    mark,过一阵来自我检验下

  • 坐怀很乱啊

    坐怀很乱啊 (参天大叔) 2012-02-28 11:17:22

    m之

  • 西粉

    西粉 (狂躁症是绝症) 2012-02-28 11:49:32

    mark,没事看看挺有好处的

  • Wooln

    Wooln 2012-03-12 13:55:46

    恶补中

  • goodspeed

    goodspeed (会用心唱歌) 2012-03-14 10:46:15

    mark

  • cute

    cute (都素浮云,都素虚无.) 2012-03-14 12:21:12

    mark

  • 左手写

    左手写 2012-03-14 14:44:51

    mark

  • 风月离

    风月离 (枯叶落,寒水断,风月若离) 2012-03-14 17:29:04

    mark 保持阵型我会说吗

  • 低调男

    低调男 (我要让全世界都知道我很低调) 2012-03-14 20:21:31

    mark

  • mif

    mif 2012-03-14 21:07:29

    m

  • 一剑东来

    一剑东来 (隐忍er) 2012-06-05 00:09:43

    mark

  • 水马夫人

    水马夫人 2012-07-25 15:14:06

    mark

  • 凉夜窗情

    凉夜窗情 2012-07-31 11:07:31

    mark

  • 木头lbj

    木头lbj (Everyday is a lame!) 2012-07-31 11:47:21

    mark下 晚上来看

  • 喜 珏

    喜 珏 (月亮街上月牙桥 月牙桥下七彩河) 2012-07-31 15:20:00

    m

  • [已注销]

    [已注销] 2012-07-31 15:40:31

    m

  • 可是

    可是 2012-08-01 22:30:47

    这个很有技术含量

  • 欲飞的翅膀

    欲飞的翅膀 2012-08-02 10:25:32

    现在我还是入门啊,就算是最熟悉的C语言,也怕这些题目的

  • Rubyless

    Rubyless 2012-08-02 14:54:48

    mk

  • redswallow

    redswallow 2012-08-02 21:57:26

    mk 学习中~今天才发现set list效率差好多orz

  • 零下一度

    零下一度 2012-10-31 23:16:31

    mark

  • Andy Xu

    Andy Xu 2012-11-01 09:08:03

    mark

  • 卿云

    卿云 (读书识人 知契有缘) 2012-11-01 15:15:35

    留着,以后慢慢看

  • zxtdm

    zxtdm 2012-11-01 19:41:04

    顶层的那两位讨论的很有参考价值。。。

  • 听风

    听风 2012-11-01 20:10:01

    又学习下

  • songyouwei

    songyouwei 2012-11-07 16:30:57

    m

  • 小灰猪

    小灰猪 (就等回家了) 2012-12-13 21:11:10

    m

  • 斩不断的风

    斩不断的风 (Stay with me.) 2012-12-14 11:02:35

  • gplin

    gplin 2013-02-25 17:15:06

    mark

  • DQ

    DQ 2013-02-25 22:11:22

    马克

  • 小六哇啦啦

    小六哇啦啦 (做一个违反物理学的人) 2013-02-25 22:19:06

    马克 马克 DQ

    - - 又看到你了

  • DQ

    DQ 2013-02-25 22:47:18

    - - 又看到你了 - - 又看到你了 小六哇啦啦

    好巧←_←果然你的地盘你无处不在

  • 川川

    川川 2013-02-25 22:51:55

    m

  • 小六哇啦啦

    小六哇啦啦 (做一个违反物理学的人) 2013-02-25 22:57:01

    好巧←_←果然你的地盘你无处不在 好巧←_←果然你的地盘你无处不在 DQ

    ¬_¬ 哼

  • bingo

    bingo 2013-02-25 23:39:31

    m

  • DQ

    DQ 2013-02-25 23:57:03

    ¬_¬ 哼 ¬_¬ 哼 小六哇啦啦

    (⊙o⊙)好傲娇!

  • meatchild

    meatchild 2013-02-26 00:32:06

    mark

  • Marble

    Marble 2013-02-26 09:17:52

    mark

  • yuchen16

    yuchen16 2013-03-05 13:43:34

    学以致用!

  • mike

    mike 2013-03-08 10:45:14

    study

  • Wang Xinjing

    Wang Xinjing 2013-03-09 14:10:51

    Mark

  • lotuslwt

    lotuslwt 2013-03-10 16:03:56

    m

  • 麦田里的守望者

    麦田里的守望者 (尘世间一个小书童) 2013-03-12 23:09:16

    还好大多数都能理解。

  • courageJ

    courageJ 2013-03-12 23:44:45

    m

  • Na

    Na 2013-03-13 08:47:48

    m

  • 白衣岛主

    白衣岛主 (做最好的自己) 2013-03-13 08:54:40

    M

  • 风劲

    风劲 2013-03-24 14:39:36

    学习了,希望lz再找点题,学习学习

  • hackrole

    hackrole 2013-03-24 15:20:28

    不错,mark

  • junjunjun

    junjunjun 2013-03-24 15:34:48

    mark

  • senonchen

    senonchen 2013-04-03 12:20:34

    Python是如何进行内存管理的? gc, 引用计数。 什么是lambda函数?它有什么好处? 匿名函数。 Python是如何进行内存管理的? gc, 引用计数。 什么是lambda函数?它有什么好处? 匿名函数。没啥好处。 how do I iterate over a sequence in reverse order reversed Python是如何进行类型转换的? 显式类型转换 Python里面如何实现tuple和list的转换? tuple(),list() 请写出一段Python代码实现删除一个list里面的重复元素 lambda x: list(set(x)) Python如何实现单例模式?其他23种设计模式python如何实现? python不需要这些模式 Python里面如何拷贝一个对象? 没有统一的办法。copy.deepcopy 介绍一下except的用法和作用? 这个就不说了 Python中pass语句的作用是什么? pass 介绍一下Python下range()函数的用法? 咋介绍? 如何用Python来进行查询和替换一个文本字符串? re.find re.sub Python里面search()和match()的区别? 说的re.search和re.match?忘记了 用Python匹配HTML tag的时候,<.*>和<.*?>有什么区别? 后者匹配<> Python里面如何生成随机数? random 如何用Python来发送邮件? 山寨mail协议。os.system sendmail 有两个序列a,b,大小都为n,序列元素的值任意整形数,无序; 要求:通过交换a,b中的元素,使[序列a元素的和]与[序列b元素的和]之间的差最小。 1. 将两序列合并为一个序列,并排序,为序列Source 2. 拿出最大元素Big,次大的元素Small 3. 在余下的序列S[:-2]进行平分,得到序列max,min 4. 将Small加到max序列,将Big加大min序列,重新计算新序列和,和大的为max,小的为min。 Python如何定义一个函数? def lambda object with __call__ 有没有一个工具可以帮助查找python的bug和进行静态的代码分析? pycheck pylint 如何在一个function里面设置一个全局的变量? global ... 蒙面骑士

    哥们你是脑残么

<前页 1 2 后页>

你的回应

回应请先 , 或 注册

92508 人聚集在这个小组
↑回顶部