程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

MyFirstDay(附6篇python亲历面试题)

发布于2019-07-30 10:45     阅读(1447)     评论(0)     点赞(3)     收藏(8)


  一直以来都是在看别人写的内容,学习前辈们的经验,总感觉自己好像没有什么值得拿出来分享和交流的知识,最近在准备换工作(python后端开发),坐标上海,2019年3月,半个月面了6家(感觉效率是真不高。。。)每次都有记录(luying)拿出来让小伙伴们一起看看,可以一起回答下,毕竟我也是菜鸟(本科土木工程,两年工作经验,所以面试官可能问的问题也是对应的这样一个水平的吧,大神们勿喷哟),有些在网上搜了也没找到适合的答案,有些是已经找到答案了的,然后明天再整理和更新一下答案吧,话不多说,上题:

  • 1>***猫:

  1. python基础类:

    1. 字符串反转的常用处理方式:
    2. 你说一下python中的迭代器、生成器、装饰器
    3. 如果让你实现一个迭代器,你会怎么做
    4. 怎么样获取一个生成器?
    5. 你有用过yield对象吗?得到的是一个什么样的对象?
    6. 你有了解过python中的协程吗?
  2. 技能类:

    1. 你有用过git吗?
    2. 你有合过代码吗?
    3. 你有布署过代码吗?
    4. 布署的步骤是怎样的?你是怎么样把你的代码放到服务器中的?
    5. docker你有使用过吗?谈一谈
    6. 你平时是怎么去debug你的代码的?比如说有些代码是第一次写,你不知道你写的是不是对的,一但出现了问题,你要怎么去定位它,检测它?
    7. 你有多长时间的软件开发经验?
  3. 业务类:

    1. 你对电商的业务了解吗?

    2. 我问你一个具体的电商的业务啊:电商在大多数领域中都是有库存的,我在下订单的时候,我的库存的变化,你知道吗?(我问的是你怎么去处理库存的变化?)因为客户下单的时候,有些是去减库存了,有些不减对吧?你的理解呢?

    3. 你事务的时候有没有出现死锁的情况?

    4. 你刚刚说到的下单之后的库存锁的问题?你是在下单的时候去扣库存,还是在支付完成了以后去扣?

    5. 如果用户不支付,你的库存怎么办?(我还是没有听到你说,处理库存的点)

    6. 如果支付失败了,你对库存有一个什么样的动作?

  • 2>**港:

  1. 这个项目你当时做了多久?一共几个人?后台做的几个人?

  2. Whoosh是什么?和ES差不多是吧?
  3. 你是负责订单和商品哦?订单流程复杂吗?(一个完整的电商是从下单->支付->发货->退货->评价->售后,你们的流程是整个流程吗?
  4. 支付是用的什么?支付宝?微信?还是第三方?支付宝你是直接调http?还是它有库?
  5. 你们这个是前后端不分离的吗?
  6. 你们订单是用uid来存它的id还是数字来存id的?
  7. 你们是用纯SQL语句来做的?还是用filter过滤的方式来做的?(意思是我现在查个订单,现在有订单号了,如何出结果?有几十个条件的,用filter写起来好写不?还有包含、排除的这种?
  8. 搜索引擎用过吗?怎么样去把条件和商品做一个匹配?(如‘红色手机’)
  9. 怎么利用搜索引擎来做这个事情?
  10. 支付模块大概写了多久?就是把支付宝调通?
  11. authenticated有用过吗?
  12. 事务做过吗?
  13. 不提交前,能够查出来当前值,新增一条,但是没有提交,我去做查,该如何解决?数据库是不是被锁住的?有什么办法能够做到能够查询出来?
  • 3>**咨询:  

  1. 笔试题(图片格式):

 

  • 4>**科技(外包): 

  1. 技术面:

    1. 你可以挑一个你比较得意的项目来聊一聊(你比较满意的,感觉还行的项目)
    2. 类似于电商的项目,在做后端设计的时候有没有做过并发的设计?不谈高并发,100个/s,200个/s这种的就可以

  2. 笔试(技术面试官口述):
    1. 简单讲一下装饰器的情况。写一个装饰器来测试一下算法的执行时间:
    2. A表对应到B表的详细的信息,A列表关联B列表,但是B列表中的id是残缺的,有没有办法能够写一个搜索语句,从A中拿ID,再从B中拿详细信息。(如果直接从A中去遍历ID去拿的时候,有可能B中详细的信息,是没有的)如何操作?
    3. 你平时学的时候,有没有学过数据结构算法这些?我问一个我们可能会遇到的问题:比如,我现在有一个列表,里面有100个乱序的数,我现在要排序,排序的话,我不希望用python的sort/sorted这种东西,你看能不能写一个简单的算法
  • 5>*路网(感觉像外包,但是好像又不用外派)

  1. 笔试题(纸质版的,但是上面有公司名称,故手敲了一份):
    1. python中==与is之间的区别是什么?下面图中的代码输出结果是什么?
      Class A(object):
          Pass
      
         a1 = A()
         a2 = A()
         print(a1 is a2)
         print(a1 == a2)
    2. python中函数调用的时候参数的传递方式是指传递还是引用传递?
    3. Python函数定义中常见的*args跟**kwargs分别有什么用途?
    4. Python中的decorator是什么,写出自己写过的最简单的一个decorateor
    5. Django/Flask中一次HTTP请求的处理流程:
    6. 请说明session跟cookie的区别及联系?
    7. 实现一个跟range具有相似功能的迭代器my_range
    8. 写出一个支持评论的博客的数据库表结构
  2. 技术面试(口述):
    1. 学习经历(学习路径,什么时候开始接触python的,具体来说看了什么教程,谁的教程,看了什么视频,看了哪一本书,看了些什么文档)最好是言之有物,具体到如Django文档,是全看了,还是看了某些部分比较明确的量化的东西
    2. 说一下项目经历
    3. 接触技术、学习技术以来,某一个最让你激动的时刻,如搞定了一个bug,或者是一个框架中长期困扰着你的问题,被你搞明白了,也可能是做出了很漂亮的一个界面等等,任何情况都可以,但并不一定是很牛逼的事情
    4. 人生迄今为止,你觉得最有成就感的一件事情
    5. 电影院的表结构是什么样的?一个电影院,一场电影,一个座位,他们之间有什么关系?添加一场电影的时候我怎么添加?管理员添加一场电影的时候?(逻辑)比如说我添加的时候,档期如何去排?
    6. 项目中会牵扯到规格这种问题吗?表结构是如何设计的?
    7. 你以前的工作都是做什么?
  • 6>工业**:

  1. 笔试题(隐藏公司名称,手敲):

    1. python中下列lambada函数定义错误的是:

      a)       g=lambda x,y:x*y                              b).g=lambda x,y=0,z=0:x+y+z

      c)      g=lambda x:x**2                                d).g=lambda x=1,y,z=0:x+y+z

      python lambda函数
    2. python中下列表达式

      a.X>Y?X:Y      b.X<Y?X:Y     C.X if X > Y else Y        D.X if X<Y else Y
    3. 下列哪种类型是python的映射类型?

      a.str        b.list       c.tuple           d.dict
    4. 下列代码执行结果是?[i**i for I in xrange(3)]

      a.[1, 1, 4]       b.[0, 1, 4]       c.[1, 2, 3]       d.(1, 1, 4)
    5. A与b定义如下,下列哪个是正确的?

      a = ‘123’       b = ‘123’
      a. a != b        b.a is b          c. a == 123          d.a + b =246
    6. 有一个列表a=[1, 2, 3, 4, 5, 6, 7, 8, 9],返回乘方列表(使用python高阶函数):
    7. 有一个列表a=[1, 2, 3, 4, 5, 6, 7, 8, 9],返回乘积(使用python高阶函数):

    8. 有一个列表a=[1, 2, 3, 4, 5, 6, 7, 8, 9],挑出奇数(使用python高阶函数):
    9. 简要描述python的垃圾回收机制(garbage collection)?
    10. python里面如何拷贝一个对象?(赋值,浅拷贝,深拷贝的区别)?
    11. 什么是python装饰器,如何使用?
    12. python模块中match和search的区别?
    13. *args and **kwargs的作用?
    14. python实现快速排序算法
    15. 现在要求计算二进制的逆序,如数34520用二进制表示为10000110 11011000将它逆序,我们得到了一个新的二进制数00011011000001

  

 

综上:总结一下上面的面试题,还是可以看到,对于两年工作经验的考察,主要还是基于对python的基础知识的掌握程度,以及对项目经验的询问上,希望能够帮到和我一样在找python工作的小伙伴们,明天再更新答案部分(谁能告诉我一下,后面这个1 2 3 怎么消除呀,哎,第一次发帖,有点不大会弄...)



所属网站分类: 技术文章 > 博客

作者:小胖子

链接:https://www.pythonheidong.com/blog/article/2407/07a172837911dd66ff36/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

3 0
收藏该文
已收藏

评论内容:(最多支持255个字符)