-
【Python面试真题】- 是否遇到过python的模块间循环引用的问题,如何避免它?
【Python面试真题】- 是否遇到过Python的模块间循环引用的问题,如何避免它? 这是代码结构设计的问题,模块依赖和类依赖 如果老是觉得碰到循环引用,很可能是模块的分界线划错地方了。可能是把应该在一起的东西硬拆开了,可能是某些职责放错地方了,可能是应该抽象的东西没抽象 总之微观代码规范可能并不能帮到太多,重要的是更宏观的划分模块的经验技巧,推荐uml,脑图,白板等等图形化的工具先梳理清楚整个系统的总体结构和职责分工 &nbs…
-
【Python面试真题】- 对比一下dict中items与iteritems?
D = {'a':1,'b':2,'c':3,'d':4} D.items() #一次性取出所有 &…
-
【Python面试真题】- 有用过with statement吗?它的好处是什么?
【Python面试真题】- 有用过with statement吗?它的好处是什么? with open('text.txt') as myfile: … while True: … line = myfile.readline() …
-
【Python面试真题】- 对比一下dict中items与iteritems?
【Python面试真题】- 对比一下dict中items与iteritems? D = {'a':1,'b':2,'c':3,'d':4} D.items()  …
-
【Python面试真题】- 是否遇到过python的模块间循环引用的问题,如何避免它?
【Python面试真题】- 是否遇到过Python的模块间循环引用的问题,如何避免它? 这是代码结构设计的问题,模块依赖和类依赖 如果老是觉得碰到循环引用,很可能是模块的分界线划错地方了。可能是把应该在一起的东西硬拆开了,可能是某些职责放错地方了,可能是应该抽象的东西没抽象 总之微观代码规范可能并不能帮到太多,重要的是更宏观的划分模块的经验技巧,推荐uml,脑图,白板等等图形化的工具先梳理清楚整个系统的总体结构和职责分工 &nbs…
-
【Python面试真题】- 什么是GIL?
【Python面试真题】- 什么是GIL? 什么是GIL(Global Interpreter Lock)全局解释器锁? 简单地说就是: 每一个interpreter进程,只能同时仅有一个线程来执行, 获得相关的锁, 存取相关的资源. 那么很容易就会发现,如果一个interpreter进程只能有一个线程来执行, 多线程的并发则成为不可能, 即使这几个线程之间不…
-
【Python面试真题】- 你在github上都fork过哪些python库,列举一下你经常使用的,每个库用一句话描述下其功能?
http://rogerdudler.github.io/git-guide/index.zh.html #关于git简明指南 http://www.zhihu.com/question/20070065 …
-
【Python面试真题】- 调试python代码的方法有哪些?
【Python面试真题】- 调试Python代码的方法有哪些? 1、具体IDE都有调试,比如:IDLE, Eclipse+Pydev都可以设置断点调试。 2、pdb模块也可以做调试。 3、还有PyChecker和Pylint 4、PyChecker是一个Python代码的静态分析工具,它可以帮助查找Python代码的bug, 会对代码的复杂度和格式提出警告 &…
-
【Python面试真题】- 迭代器和生成器的区别
【Python面试真题】- 迭代器和生成器的区别 1)迭代器是一个更抽象的概念,任何对象,如果它的类有next方法和iter方法返回自己本身。对于string、list、dict、tuple等这类容器对象,使用for循环遍历是很方便的。在后台for语句对容器对象调用iter()函数,iter()是Python的内置函数。iter()会返回一个定义了next()方法的迭代器对象,它在容器中逐个访问容器内元素,next()也是Python的内置函数。在没有后续元素时,next()会抛出一个StopI…
-
【Python面试真题】- 简单谈下GIL -Global Interpreter Lock(全局解释器锁)
【Python面试真题】- 简单谈下GIL -Global Interpreter Lock(全局解释器锁) Python代码的执行由Python 虚拟机(也叫解释器主循环,CPython版本)来控制,Python 在设计之初就考虑到要在解释器的主循环中,同时只有一个线程在执行,即在任意时刻,只有一个线程在解释器中运行。对Python 虚拟机的访问由全局解释器锁(GIL)来控制,正是这个锁能保证同一时刻只有一个线程在运行。