此题为判断题(对,错)。
A.sadd
B.add
C.append
D.sappend
A.ANSIC
B.C++
C.JAVA
D.Python
A.关系数据库
B.键值数据库
C.列存数据库
D.图数据库
此题为判断题(对,错)。
国脉科技股份有限公司1月招聘面试题面试题面试官常问到的一些题目整理如下:问题 Q1:Python中的docstring是什么?可用的回答 :Python文档字符串称为docstring,它是一种记录Python函数,模块和类的方法。可以通过内置方法_doc_获取问题 Q2:scrapy和scrapy-redis的区别?可用的回答 : scrapy是一个爬虫通用框架,但不支持分布式,scrapy-redis是为了更方便的实现scrapy分布式爬虫,而提供了一些以redis为基础的组件 为什么会选择redis数据库?因为redis支持主从同步,而且数据都是缓存在内存中,所以基于redis的分布式爬虫,对请求和数据的高频读取效率非常高 什么是主从同步?在Redis中,用户可以通过执行SLAVEOF命令或者设置slaveof选项, 让一个服务器去复制(replicate)另一个服务器,我们称呼被复制的服务器为主服务器(master),而对主服务器进行复制的服务器则被称为从服务器(slave), 当客户端向从服务器发送SLAVEOF命令,要求从服务器复制主服务器时,从服务器首先需要执行同步操作,也即是,将从服务器的数据库状态更新至主服务器当前所处的数据库状态 问题 Q3:Django 和 Flask 之间有什么区别?可用的回答 :Flask是一个“微框架”,主要用于具有更简单要求的小型应用程序。在Flask中,必须使用外部库。Django也可以用于更大的应用程序。它包括一个ORM。问题 Q4:写爬虫使用多进程好,还是用多线程好?可用的回答 : IO密集型代码(文件处理、网络爬虫等), 多线程能够有效提升效率(单线程下有IO操作会进行IO等待,造成不必要的时间浪费,而开启多线程能在线程A等待时,自动切换到线程B,可以不浪费CPU的资源,从而能提升程序执行效率)。 在实际的数据采集过程中,既考虑网速和响应的问题,也需要考虑自身机器的硬件情况,来设置多进程或多线程 问题 Q5:一行代码实现1-100之和?可用的回答 :使用sum函数。sum(range(1, 101)问题 Q6:TCP和UDP的区别?可用的回答 : TCP与UDP基本区别 1. 基于连接与无连接 2. TCP要求系统资源较多,UDP较少 3. UDP程序结构较简单 4. 字节流模式(TCP)与数据报模式(UDP); 5. TCP保证数据正确性,UDP可能丢包 6. TCP保证数据顺序,UDP不保证 具体编程时的区别 1.socket()的参数不同 2.UDP Server不需要调用listen和accept 3.UDP收发数据用sendto/recvfrom函数 4.TCP:地址信息在connect/accept时确定 5.UDP:在sendto/recvfrom函数中每次均 需指定地址信息 6.UDP:shutdown函数无效 问题 Q7:如何删除python数组的值?可用的回答 :可以使用pop()或remove()方法删除数组元素。这两个函数之间的区别在于前者返回已删除的值,而后者则不返回。问题 Q8:list和tuple有什么区别?可用的回答 :列表和元组之间的区别在于列表是可变的而元组不是。元组可以被散列,例如作为词典的关键。问题 Q9: scrapy的优缺点?为什么要选择scrapy框架?可用的回答 : 优点: 采取可读性更强的xpath代替正则强大的统计和log系统 同时在不同的url上爬行 支持shell方式,方便独立调试 写middleware,方便写一些统一的过滤器 通过管道的方式存入数据库 缺点: 基于python爬虫框架,扩展性比较差,基于twisted框架, 运行中exception是不会干掉reactor,并且异步框架出错后是不会停掉其他任务的,数据出错后难以察觉 问题 Q10:如何解释Python?可用的回答 :Python语言是一种解释语言。Python程序直接从源代码运行。它将程序员编写的源代码转换为中间语言,再次转换为必须执行的机器语言。算法题面试官常问到的一些算法题目整理如下(大概率会机考):算题题 A1:Pascal 三角I_II题目描述如下:可做参考的解答如下:class Solution(object): def generate(self, numRows): :type numRows: int :rtype: ListListint result = for i in range(1, numRows+1): x = 0 for j in range(i) x0 = 1 x-1 = 1 for j in range(1, i-1): xj = result-1j + result-1j-1 result.append(x) return result# II class Solution(object): def generate(self, numRows): :type numRows: int :rtype: ListListint result = for i in range(1, numRows+2): x = 0 for j in range(i) x0 = 1 x-1 = 1 for j in range(1, i-1): xj = result-1j + result-1j-1 result.append(x) return result-1算题题 A1:挑卡片题目描述如下:貌似今日头条笔试?第三题。两个人选卡牌,每张卡牌都有两个分值 x, y。选到卡牌时x加给自己,y加给团队。给一组卡牌,求两个人选的卡牌 x 相等且y最大的情况。思路:根据 y 的分值先排序。之后进行判断:若里面的x相加是奇数直接跳过,在进行一次将此时下标排除的判断,最后都不通过将
此题为判断题(对,错)。
此题为判断题(对,错)。
A、MySQL
B、PostgreSQL
C、SQLserver
D、Redis
A、SCHEDULER=Scrapy-redisschedulerSchedule
B、SCHEDULER='SCRAPYschedulerScheduleCDUPEFILTER_
C、LASSscrap_redis.dupefilterRfpdupefilter
D、dupefilter-class=scrap.dupefilterRfpdupefilter'
A.列表
B.哈希
C.集合
D.有序集合