分类 Python面试题 下的文章


撰写于    浏览:460 次  分类: Python面试题
with 语句的作用with 语句适用于对资源进行访问的场合,确保不管使用过程中是否发生异常都会执行必要的“清理”操作,释放资源,比如文件使用后自动关闭、线程中锁的自动获取和释放等。一般访问文件资源时我们会这样处理:f = open('c:\test.txt', 'r') data = f.read() f.close()这样写没有错,但是容易犯两[...]

撰写于    浏览:300 次  分类: Python面试题
下面代码会存在什么问题,如何改进?def strappend(num): str='first' for i in range(num): str+=str(i) return str答: 首先不应该使用 Python 的内置类似 str 作为变量名这里我把它改为了 s,另外在Python,str 是个不可变[...]

撰写于    浏览:443 次  分类: Python面试题
1、在读文件操作的时候会使用 read、readline 或者 readlines,简述它们各自的作用答:read() 每次读取整个文件,它通常用于将文件内容放到一个字符串变量中。如果希望一行一行的输出那么就可以使用 readline(),该方法会把文件的内容加载到内存,所以对于对于大文件的读取操作来说非常的消耗内存资源,此时就可以通过 readl[...]

撰写于    浏览:297 次  分类: Python面试题
1、下列字典对象键类型不正确的是?A:{1:0,2:0,3:0}B:{"a":0, "b":0, "c":0}C: {(1,2):0, (2,3):0}D: {[1,2]:0, [2,3]:0}答:D 因为只有可 hash 的对象才能做字典的键,列表是可变类型不是可 hash 对象,所以不能用列表做为字典的键。2、如何交换字典 {"A":1,"B"[...]

撰写于    浏览:394 次  分类: Python面试题
1、字典操作中 del 和 pop 有什么区别?答:del 可以根据索引(元素所在位置)来删除的,没有返回值。 pop 可以根据索引弹出一个值,然后可以接收它的返回值。2、按照字典的内的年龄排序d1 = [ {'name':'alice', 'age':38}, {'name':'bob', 'age':18}, {'nam[...]

撰写于    浏览:306 次  分类: Python面试题
1、将"hello world"转换为首字母大写"Hello World"方案一:"hello world".title()非常简单一句话搞定。方案二:如果只是第一个单词首字母大小的话,只使用capitalize 即可,但是这里是两个单词,所以首先需要切分字符串为单词数组:arr = "hello world"[...]

撰写于    浏览:457 次  分类: Python面试题
进程、协程、线程分别是什么,以及区别是什么?从操作系统角度来讲,进程是资源分配单元,线程是执行单元,多个线程可以共享所在进程的资源。而协程是从程序运行角度来叫,是由用户(程序)控制和调度的一个过程,在 Python 中,协程是一个包含了 yield 的函数,比如下图:在Python 3里面你可以用 asyncio.iscoroutine(coro)[...]

撰写于    浏览:295 次  分类: Python面试题
GIL 是什么?它的影响和具体原理是什么?GIL:Global Interpreter Lock(全局解释器锁)。具体表现就是:在一个进程中,同一时刻只能有一个线程能得到解释器,为什么只能有一个线程拿到解释器呢?因为在 CPython 中,内存管理不是线性安全的,所以,为了避免多个线程同时访问到一个对象,就有了这么一个锁。那么 GIL 的影响是什么[...]