Python面试题总结

Python面试题总结

ID:47102487

大小:117.30 KB

页数:30页

时间:2019-08-03

Python面试题总结_第1页
Python面试题总结_第2页
Python面试题总结_第3页
Python面试题总结_第4页
Python面试题总结_第5页
资源描述:

《Python面试题总结》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、1.Python 线程池原理? 我理解为线程池是一个存放很多线程的单位,同时还有一个对应的任务队列。整个执行过程其实就是使用线程池中已有有限的线程把任务队列中的任务做完。这样做的好处就是你不需要为每个任务都创建一个线程,因为当你创建第100个线程来执行第100个任务的时候,可能前面已经有50个线 程结束工作了。超过最大值的线程可以排队,但他们要等到其他线程完成后才启动。因此重复利用线程来执行任务,减少系统资源的开销。  2.Python合并字典,相同key的value如何相加?利用collections.Counter可轻松办到>>> x = { 'apple': 1, 

2、'banana': 2 }>>> y = { 'banana': 10, 'pear': 11 }>>> from collections import Counter>>> X,Y = Counter(x), Counter(y)>>> z = dict(X+Y)>>> z{'apple': 1, 'banana': 12, 'pear': 11}另一种写法>>>from collections import Counter>>>dict(Counter(x)+Counter(y))  ( 合并两个字典的方法方法1:dictMerged1=dict(dict1.item

3、s()+dict2.items())方法2:dictMerged2=dict(dict1, **dict2)方法2等同于:dictMerged=dict1.copy()dictMerged.update(dict2)或者dictMerged=dict(dict1)dictMerged.update(dict2)3.解释GUI和GPL?GUI图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面。 GPL(GNU通用公共许可证)GPL同其它的自由软件许可证一样,许可社会公众享有:运行、复制软件

4、的自由,发行传播软件的自由,获得软件源码的自由,改进软件并将自己作出的改进版本向社会发行传播的自由。 4.简述爬虫的基本步骤和流程?    网络爬虫的基本工作流程如下:    1.首先选取一部分精心挑选的URL;    2.将这些URL放入待抓取URL队列;    3.从待抓取URL队列中取出待抓取在URL,(解析DNS,并且得到主机的ip,)并将URL对应的网页下载下来,存储进已下载网页库中。此外,将这些URL放进已抓取URL队列。4.分析已抓取URL队列中的URL和其中的有价值的数据,将新的URL,放入待抓取URL队列,将数据存储起来,从而进入下一个循环。 5.你们公

5、司的业务中,并发能达到多少? 6.如何循环抓取一个网站的1000张图片?流程大概是这样找到所有页数----遍历所有的页数----遍历当前页的所有相册(给每个相册建立一个目录)----遍历当前相册的所有图片(遍历此相册的所有页(遍历当前页的所有照片并找到图片的url))----获得图片url就存起来,然后通过图片url下载图片。----引用计数当图片下载量达到1000张时,停止爬取。 7.如果对方网站可以反爬取,封ip怎么办?1、放慢抓取速度,减小对于目标网站造成的压力。但是这样会减少单位时间类的抓取量。2、第二种方法是通过设置代理IP等手段,突破反爬虫机制继续高频率抓取。

6、但是这样需要多个稳定的代理IP。代理IP可以搜索到免费的,但是可能不太稳定,也有收费的,但是不一定划算,也可能不是长久之计。普通的基于ADSL拨号的解决办法 通常,在抓取过程中遇到禁止访问,可以重新进行ADSL拨号,获取新的IP,从而可以继续抓取。但是这样在多网站多线程抓取的时候,如果某一个网站的抓取被禁止了,同时也影响到了其他网站的抓取,整体来说也会降低抓取速度。一种可能的解决办法 同样也是基于ADSL拨号,不同的是,需要两台能够进行ADSL拨号的服务器,抓取过程中使用这两台服务器作为代理。假设有A、B两台可以进行ADSL拨号的服务器。爬虫程序在C服务器上运行,使用A作

7、为代理访问外网,如果在抓取过程中遇到禁止访问的情况,立即将代理切换为B,然后将A进行重新拨号。如果再遇到禁止访问就切换为A做代理,B再拨号,如此反复。如下图:使用A为代理,B拨号:8.简述 移动端app 数据的抓取流程1、例如:爬取手机淘宝,核心还是一个WEB页面:https://m.taobao.com/#index2、有很多资讯类的APP,核心都是一个WEB页面。直接用爬虫的方法抓就可以了。3、非WEB页面的APP,用APP自动化的一些东西试试4、不然就只有抓包了。 9.是否了解Python的函数参数传递的机制?pytho

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。