python-面试QA

星泼拿衣服 · · 361 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

语言

  • 讲讲日常开发中都用到了那些Python内置的模块
  • 推荐一本看过较好的python书籍?
  • 装饰器、迭代器、yeild的理解
  • 高阶函数、内置模块的使用
  • 元编程、魔术方法、并发的理解
  • Python解释器运行机制
  • 垃圾回收原理
  • 多线程,GIL
  • 标准库线程安全的队列是哪一个?不安全的是哪一个?logging是线程安全吗?
  • py适合的场景有哪些?当遇到计算密集性任务怎么办?

操作系统

  • tcp/udp的区别,tcp粘包是什么回事,如何处理?udp有粘包吗?
  • time_wait是什么情况?出现过多的close——wait可能是什么的原因?
  • epoll,selete的区别。边缘触发,水平触发区别。

存储

mysql,redis。内存包含rdbms、nosql及缓存。
mysql:

  • mysql字符集和排序规则
  • varchar与char的区别,大小限制。utf8字符集下的varchar较多能存多少个字符?
  • primary key和unique的区别
  • 外键有什么用,是否该用外键。外键需要索引吗?
  • myisam与innodb的区别。innodb的两阶段锁定协议是什么情况?
  • 索引有什么用,大致原理是什么?设计索引有什么注意点?

redis:

  • 什么场景用redis,为什么mysql不适合?
  • redis的事务,事物模拟原子+1操作?原子操作还有其他的解决方案吗?
  • redis内存满了怎么办?

安全

web安全:

  • sql注入怎么产生,如何防止?
  • xss如何预防?htmlescape后能否避免xss?
  • csrf是什么?django是如何预防的?

密码技术

  • 什么是分组加密,加密模式有哪些?ecb、cbc模式有什么区别?为什么需要iv向量?
  • 简述https的过程
  • 对称加密与非对称加密区别?
  • 如何生成共享密钥?如何防范中间人攻击?

  • 是否关注新技术啊?golang,rust是否了解?numpy,pandas是啥鸟?

模块,包,库,框架和容器(数据结构)
装饰器、迭代器和yeild是什么?
A:1、同一个类下,调用嵌套函数(即装饰器),作为前置限制说明,传递函数的参数,提供某个生命周期的作用域。
2、iterable = iterator(argumeng){for循环语句等使variable增大的代码块}。调用含for语句的嵌套函数或类,相当于循环语句的拓展。
3、生成器generator = yield(argment),参数为函数。yield的出现为了控制内存占用,避免迭代过多。

反射是什么?
“耍流氓的方式”
getattr,hasattr,setattr,delattr,获取、查询、设置、删除成员


数据类型:
参数argument
形参parameter=*arg / 仅传一个参数
对象object
变量variable
可迭代iterable


有疑问加站长微信联系

本文来自:简书

感谢作者:星泼拿衣服

查看原文:python-面试QA

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:812540095

361 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传