资讯专栏INFORMATION COLUMN

明天找python工作,看看这几道Python面试题吧,Python面试题No14

番茄西红柿 / 2892人阅读

摘要:定时检测器定时拿出一部分重新的用过滤器进行检测剔除不能用的代理。重载是让类以统一的方式处理不同类型数据的一种手段。虽然在内存中存储表数据确实会提供很高的性能,但当守护进程崩溃时,所有的数据都会丢失。

第1题: 如何解决验证码的问题,用什么模块,听过哪些人工打码平台?

PIL、pytesser、tesseract模块

平台的话有:(打码平台特殊,不保证时效性)

云打码

挣码

斐斐打码

若快打码

超级鹰

第2题: ip 被封了怎么解决,自己做过 ip 池么?

关于 ip 可以通过 ip 代理池来解决问题 ip 代理池相关的可以在 github 上搜索 ip proxy 自己选一个 去说 github.com/awolfly9/IP… 提供大体思路:

    获取器 通过 requests 的爬虫爬取免费的 IP 代理网址获取 IP。

    过滤器通过获取器获取的代理请求网页数据有数据返回的保存进 Redis。

    定时检测器定时拿出一部分 Proxy 重新的用过滤器进行检测剔除不能用的代理。

    利用 Flask web 服务器提供 API 方便提取 IP

第3题: 在 Python 中,list,tuple,dict,set 有什么区别,主要应用在什么场景? 区别

list:链表,有序的数据结构, 通过索引进行查找,使用方括号”[]”;

tuple:元组,元组将多样的对象集合到一起,不能修改,通过索引进行查找, 使用括号”()”;

dict:字典,字典是一组键(key)和值(value)的组合,通过键(key)进行查找,没有顺序, 使用大括号” {}”;

set:集合,无序,元素只出现一次, 自动去重,使用”set([])”

应用场景

list:简单的数据集合,可以使用索引;

tuple:把一些数据当做一个整体去使用,不能修改;

dict:使用键值和值进行关联的数据;

set:数据只出现一次,只关心数据是否出现, 不关心其位置。

第4题: 请描述方法重载与方法重写? 方法重载

是在一个类里面,方法名字相同,而参数不同。返回类型可以相同也可以不同。 重载是让类以统一的方式处理不同类型数据的一种手段。

方法重写

子类不想原封不动地继承父类的方法,而是想作一定的修改,这就需要采用方法的重写。方法重写又称方法覆盖。

第5题: 如何用 Python 来发送邮件?

smtplib 标准库

可以参考菜鸟教程:www.runoob.com/python/pyth…

第6题:是否了解线程的同步和异步?

线程同步:多个线程同时访问同一资源,等待资源访问结束,浪费时间,效率低

例子:你说完,我再说。

线程异步:在访问资源时在空闲等待时同时访问其他资源,实现多线程机制

你喊朋友吃饭,朋友说知道了,待会忙完去找你 ,你就去做别的了。

第7题:是否了解网络的同步和异步?

同步:提交请求->等待服务器处理->处理完毕返回,这个期间客户端浏览器不能干任何事

异步: 请求通过事件触发->服务器处理(这是浏览器仍然可以作其他事情)->处理完毕

第8题:你是否了解MySQL数据库的几种引擎?

这个答案比较发散,可以重点说下面两种

InnoDB

InnoDB是一个健壮的事务型存储引擎,这种存储引擎已经被很多互联网公司使用,为用户操作非常大的数据存储提供了一个强大的解决方案。

在以下场合下,使用InnoDB是最理想的选择:

    更新密集的表。InnoDB存储引擎特别适合处理多重并发的更新请求。

    事务。InnoDB存储引擎是支持事务的标准MySQL存储引擎。

    自动灾难恢复。与其它存储引擎不同,InnoDB表能够自动从灾难中恢复。

    外键约束。MySQL支持外键的存储引擎只有InnoDB

    支持自动增加列AUTO_INCREMENT属性。

一般来说,如果需要事务支持,并且有较高的并发读取频率,InnoDB是不错的选择。

MEMORY

使用MySQL Memory存储引擎的出发点是速度。为得到最快的响应时间,采用的逻辑存储介质是系统内存。 虽然在内存中存储表数据确实会提供很高的性能,但当mysqld守护进程崩溃时,所有的Memory数据都会丢失。 获得速度的同时也带来了一些缺陷。  

一般在以下几种情况下使用Memory存储引擎:

    目标数据较小,而且被非常频繁地访问。在内存中存放数据,所以会造成内存的使用,可以通过参数max_heap_table_size控制Memory表的大小,设置此参数,就可以限制Memory表的最大大小。

    如果数据是临时的,而且要求必须立即可用,那么就可以存放在内存表中。

    存储在Memory表中的数据如果突然丢失,不会对应用服务产生实质的负面影响。

第9题:关注题,最近在公号更新一个神奇的系列入门文章

她专科学历 27岁从零开始学习c,c++,python编程语言 29岁编写百例教程 30岁掌握10种编程语言, 用自学的经历告诉你,学编程就找梦想橡皮擦

欢迎关注她的公众号,非本科程序员

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/7137.html

相关文章

  • 明天python工作看看几道Python面试Python面试No14

    摘要:定时检测器定时拿出一部分重新的用过滤器进行检测剔除不能用的代理。重载是让类以统一的方式处理不同类型数据的一种手段。虽然在内存中存储表数据确实会提供很高的性能,但当守护进程崩溃时,所有的数据都会丢失。第1题: 如何解决验证码的问题,用什么模块,听过哪些人工打码平台? PIL、pytesser、tesseract模块 平台的话有:(打码平台特殊,不保证时效性) 云打码 挣码 斐斐打码 若快打码...

    李世赞 评论0 收藏0
  • 大意了,几道Python面试没有答对,Python面试No13

    第1题: Python如何爬取 HTTPS 网站? 这类问题属于简单类问题 在使用 requests 前加入:requests.packages.urllib3.disable_warnings()。 为 requests 添加 verify=False 参数 导入ssl模块 import ssl ssl._create_default_https_context = ssl....

    xiyang 评论0 收藏0
  • 大意了,几道Python面试没有答对,Python面试No13

    第1题: Python如何爬取 HTTPS 网站? 这类问题属于简单类问题 在使用 requests 前加入:requests.packages.urllib3.disable_warnings()。 为 requests 添加 verify=False 参数 导入ssl模块 import ssl ssl._create_default_https_context = ssl....

    SHERlocked93 评论0 收藏0
  • 几道Python面试,稳准狠,Python面试No15

    摘要:必须放一个表情包,太魔性了第题修改以下代码,使得下面的代码调用类的方法原始代码基础方法衍生方法面试要点类继承,只要通过方法指定类对象就可以了。必须放一个表情包,太魔性了! showImg(https://user-gold-cdn.xitu.io/2019/5/23/16ae22b8813bdd82); 第1题: 修改以下Python代码,使得下面的代码调用类A的show方法); 原始代码 ...

    番茄西红柿 评论0 收藏0
  • 几道Python面试,稳准狠,Python面试No15

    摘要:必须放一个表情包,太魔性了第题修改以下代码,使得下面的代码调用类的方法原始代码基础方法衍生方法面试要点类继承,只要通过方法指定类对象就可以了。必须放一个表情包,太魔性了! showImg(https://user-gold-cdn.xitu.io/2019/5/23/16ae22b8813bdd82); 第1题: 修改以下Python代码,使得下面的代码调用类A的show方法); 原始代码 ...

    lolomaco 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<