请选择 进入手机版 | 继续访问电脑版

好程序员-千锋教育旗下高端IT职业教育品牌

400-811-9990
我的账户
好程序员

专注高端IT职业培训

亲爱的猿猿,欢迎!

已有账号,请

如尚未注册?

[Python] 好程序员Python教程分享常见的Python面试题

[复制链接]
叶子老师 发表于 2019-11-13 14:02:48 | 显示全部楼层 |阅读模式 打印 上一主题 下一主题
  好程序员Python培训分享常见的Python面试题,程序员面试难免会需要进行笔试,笔试是考验程序员基础功底的重要环节,根据很多小伙伴的面试反馈,今天总结分享了一些常见的Python面试题,想要看Python面试是不是可以顺利通过,这些常见的Python面试题你应该看看。
  
  1、大数据的文件读取
  ①利用生成器generator
  ②迭代器进行迭代遍历:forlineinfile
  
  2、迭代器和生成器的区别
  1)迭代器是一个更抽象的概念,任何对象,如果它的类有next方法和iter方法返回自己本身。对于string、list、dict、tuple等这类容器对象,使用for循环遍历是很方便的。在后台for语句对容器对象调用iter()函数,iter()是python的内置函数。iter()会返回一个定义了next()方法的迭代器对象,它在容器中逐个访问容器内元素,next()也是python的内置函数。在没有后续元素时,next()会抛出一个StopIteration异常。
  2)生成器(Generator)是创建迭代器的简单而强大的工具。它们写起来就像是正规的函数,只是在需要返回数据的时候使用yield语句。每次next()被调用时,生成器会返回它脱离的位置(它记忆语句最后一次执行的位置和所有的数据值)。
  
  区别:生成器能做到迭代器能做的所有事,而且因为自动创建了__iter__()和next()方法,生成器显得特别简洁,而且生成器也是高效的,使用生成器表达式取代列表解析可以同时节省内存。除了创建和保存程序状态的自动方法,当发生器终结时,还会自动抛出StopIteration异常。
  3、装饰器的作用和功能:
  引入日志、函数执行时间统计、执行函数前预备处理、执行函数后的清理功能、权限校验等场景、缓存。
  4、如何提高python的运行效率
  使用生成器;关键代码使用外部功能包(Cython,pylnlne,pypy,pyrex);针对循环的优化--尽量避免在循环中访问变量的属性。
  5、Python中的yield用法
  yield简单说来就是一个生成器,这样函数它记住上次返回时在函数体中的位置。对生成器第二次(或n次)调用跳转至该函次)调用跳转至该函数。
好程序员Python培训http://www.goodprogrammer.org/python_class.shtml

精彩内容,一键分享给更多人!
回复

使用道具 举报

您需要登录后才可以回帖

本版积分规则

关注我们
好程序员
千锋好程序员

北京校区(总部):北京市海淀区宝盛北里西区28号中关村智诚科创大厦

深圳西部硅谷校区:深圳市宝安区宝安大道5010号深圳西部硅谷B座A区605-619

杭州龙驰智慧谷校区:浙江省杭州市下沙经济技术开发区元成路199号龙驰智慧谷B座7层

郑州校区:郑州市二七区航海中路60号海为科技园C区10层、12层

Copyright 2007-2019 北京千锋互联科技有限公司 .All Right

京ICP备12003911号-5 京公安网11010802011455号

请您保持通讯畅通1对1咨询马上开启