• Part01-Py基础篇(80)

  • Part02-网络编程和并发(34)

  • Part03-数据库和缓存(46)

  • Part04-前端框架和其他(155)

Part01-Py基础篇(80)

1、为什么学习Python?

2、通过什么途径学习的Python?

3、Python和Java、PHP、C、C++、C#等其他语言的对比?

4、简述‘解释型’和‘编译型’语言;

5、Python解释器的种类及特点;

6、‘位’和‘字节’的关系;

7、b、B、KB、MB、GB的关系;

8、请至少列举5个PEP8规范(越多越好);

9、通过代码实现如下转换:

10、编写一个函数,实现将IP地址转换成一个整数;

11、Python递归的最大层数;

12、求结果;

13、ASCII、unicode、UTF-8、GBK的区别;

14、字节码和机器码的区别;

15、三元运算规则以及应用场景;

16、列举Python3与Python2的区别;

17、用一行代码实现数值交换;

18、Python3和Python2中int和long的区别;

19、xrange和range的区别;

20、列举布尔值为False的常见值;

21、文件操作时候,xreadlines和readline的区别;

22、字符串、列表、元组、字典每个常用的5个方法;

23、lambda表达式格式以及应用场景;

24、pass的作用;

25、*args和**kwargs的作用;

25、*args和**kwargs的作用;

Part02-网络编程和并发(34)

Part03-数据库和缓存(46)

1、列举常见的关系型数据库和非关系型数据库都有哪些?

  1.1 关系型数据库:Oracle、MySQL、DB2、Microsoft SQL Server、PostgreSQL、Microsoft Access、SQLite、Hive;

  1.2 非关系型数据库(NoSQL):MongoDB、Redis、ElasticsearchCassandra、HBase

  详情见权威的数据库排行榜:https://db-engines.com/en/ranking

  1.3 关系型与非关系型数据库的区别:

  • 关系型数据库

  1、特点:

  1. 基于单一关系模型,结构化存储,有完整性约束;
  2. 通过二维表建立数据之间的联系;
  3. 采用结构化查询语言(SQL)做数据读写;
  4. 操作保存数据的一致性

  2、优点:

  1. 通过事务处理保持数据的一致性;
  2. 数据更新的开销很小;
  3. 可以进行Join等复杂查询;
  4. 20多年的技术历程,技术成熟;

  3、缺点:

  1. 数据读写必须经过sql解析,大量数据、高并发下读写性能不足;
  2. 为保证数据一致性,需要加锁,影响并发操作;
  3. 无法适应非结构化的存储;
  4. 大量数据集中到一台服务区处理,使服务器不堪重负;
  5. “阻抗失谐”,即数据库中存储的对象与实际的对象实体有一定的差别;
  6. 扩展困难;
  7. 数据库庞大,价格昂贵;
  • NOSql数据库

  1、特点:

  1. 非结构化的存储;
  2. 基于多维关系模型;
  3. 部署容易,开源免费,成本低;

  2、优点:

  1. 处理高并发、大批量数据的能力强;
  2. 支持分布式集群,负载均衡,性能高;
  3. 解决“阻抗失谐”问题;
  4. 内存级数据库,查询速度快;
  5. 存储格式多,支持key-value形式、文档形式、图片形式;
  6. 没有多表连接查询机制的限制,扩展性高;

  3、缺点:

  1. 技术起步晚,维护工具以及技术资料有限;
  2. 不支持sql工业标准;
  3. 没有join等复杂的连接操作;
  4. 事务处理能力弱;
  5. 没有完整性约束,对于复杂业务场景支持较差;

2、MySQL常见数据库存储引擎及比较?

  数据库存储引擎是数据库底层软件组件,数据库管理系统(DBMS)使用数据引擎进行创建、查询、更新和删除数据操作。不同的存储引擎提供不同的存储机制、索引技巧、锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能。MySQL的核心就是存储引擎。

2.1 常见存储引擎;

  MySQL提供了多个不同的存储引擎,包括处理事务安全表的引擎和非事务安全表的引擎。在MySQL中,不需要在整个服务器中使用同一存储引擎,针对具体的要求,可对每一张表使用不同的存储引擎。MySQL5.7 支持的存储引擎有:InnoDB、MyISAM、Memory、Merge、Archive、Federated、CSV、BLACKHOLE等。使用show engines语句来进行查看。

  • InnoDB是事务型数据库的首选引擎,支持事务安全表(ACID),支持行锁定和外键。MySQL5.5.5之后,InnoDB作为默认的存储引擎。

  • MyISAM基于ISAM的存储引擎,并对其进行扩展。它是在Web、数据库存储和其他应用环境下最常使用的存储引擎之一,MyISAM拥有较高的插入、查询速度,但是不支持事务。MySQL5.5.5之前的版本中,是默认的存储引擎;

  • MEMORY存储引擎将表中的数据存储到内存中,为查询和引用其他表数据提供快速访问;

2.2 如何选择?

 功能  MyISAM  Memory  InnoDB  Archive
 存储限制 256TB   RAM 64TB None
 支持事务 No   No Yes No
 支持全文索引 Yes   No No  No
 支持数索引 No Yes  Yes  No 
 支持哈希索引 No  Yes  No  No 
 支持数据缓存 No  N/A  Yes  No 
 支持外键 No  No Yes  No 

如果要提供提交、回滚和崩溃恢复能力的事务安全(ACID兼容)能力,并要求实现并发控制,InnoDB是个良好的选择。如果数据表用来插入和查询记录,则MyISAM引擎能够提供较高的处理效率;如果只是临时存储数据,数据量不大,并且不需要较高的数据安全性,Memory,MySQL中使用该引擎作为临时表,存放查询的中间结果;如果只有INSERT 和SELECT操作,可以选择Archive引擎。Archive引擎支持高并发的插入操作,但是本身并不是事务安全的。Archive引擎非常适合存储归档类数据,如记录日志的信息可以使用Archive引擎。

3、简述数据三大范式?

4、什么是事务?MySQL如何支持事务?

5、简述数据库设计中一对多和多对多的应用场景?

6、如何基于数据库实现商品计数器?

7、常见SQL(必备)

8、简述触发器、函数、视图以及存储过程?

9、MySQL索引分类

10、索引在什么情况下遵循最左前缀的规则?

11、主键和外键的区别?

12、MySQL常见的函数?

13、列举创建索引但是无法命中索引的8种情况?

14、如何开启慢查询日志?

15、数据库导入导出命令(结构+数据)

16、数据库优化方案?

17、char和varchar的区别?

18、简述MySQL的执行计划?

19、在对name做了唯一索引的前提下,简述以下区别?

 select * from tb where name = ‘Oldboy-Wupeiqi’ 
 

select * from tb where name = ‘Oldboy-Wupeiqi’ limit 1

20、1000w条数据,使用limit offset分页时候,为什么越往后翻越慢?如何解决?

21、什么是索引合并?

22、什么是覆盖索引?

23、简述数据库读写分离?

24、简述数据库分库分表?(水平、垂直)

25、Redis和memcached的比较

26、Redis中数据库默认是多少个db及作用

27、Python操作Redis的模块?

28、如果Redis总某个列表的数据量非常大,如何实现循环显示每一个值?

29、Redis如何实现主从复制?以及数据同步机制?

30、Redis中的sentine的作用?

31、如何实现Redis集群?

32、Redis中默认有多少个哈希槽?

33、简述Redis有哪几种持久化的策略及比较?

34、列举Redis支持的过期策略?

35、MySQL里有2000w的数据,redis中只存20w数据,如何保证Redis中都是热点数据?

36、写代码,基于Redis的列表实现先进先出,后进先出队列,优先级队列?

37、如何基于Redis实现消息队列?

38、如何基于Redis实现发布和订阅?以及发布订阅和消息队列的区别?

39、什么是codis及其作用?

40、什么是twemproxy及其作用?

41、写代码实现Redis事务操作?

42、Redis中的watch的命令的作用?

43、基于Redis如何实现商城商品数量计数器?

44、简述Redis分布式锁和redlock的实现机制?

45、什么是一致性哈希?Python中是否有相应模块?

46、如何高效低找到Redis中所有以oldboy开头的key?

Part04-前端框架和其他(155)

1、谈谈你对http协议的认知

2、谈谈你对websocket协议的认知

3、什么是magic string?

4、如何创建响应式布局

不吹不擂,你想要的Python面试都在这里了【315+道题】+精心整理的解答的更多相关文章

  1. 服务器文档下载zip格式 SQL Server SQL分页查询 C#过滤html标签 EF 延时加载与死锁 在JS方法中返回多个值的三种方法(转载) IEnumerable,ICollection,IList接口问题 不吹不擂,你想要的Python面试都在这里了【315+道题】 基于mvc三层架构和ajax技术实现最简单的文件上传 事件管理

    服务器文档下载zip格式   刚好这次项目中遇到了这个东西,就来弄一下,挺简单的,但是前台调用的时候弄错了,浪费了大半天的时间,本人也是菜鸟一枚.开始吧.(MVC的) @using Rattan.Co ...

  2. 不吹不擂,你想要的Python面试都在这里了【315+道题】

    写在前面 近日恰逢老男孩全栈8期毕业季,课程后期大家“期待+苦逼”的时刻莫过于每天早上内容回顾和面试题问答部分[临近毕业每天课前用40-60分钟对之前内容回顾.提问和补充,专挑班里不爱说话就的同学回答 ...

  3. 你想要的Python面试都在这里了【315+道题】

    写在前面 近日恰逢学生临近毕业,课程后期大家"期待+苦逼"的时刻莫过于每天早上内容回顾和面试题问答部分[临近毕业每天课前用40-60分钟对之前内容回顾.提问和补充,专挑班里不爱说话 ...

  4. 不吹不擂,Python编程【315+道题】

    写在前面 近日恰逢学生毕业季,课程后期大家“期待+苦逼”的时刻莫过于每天早上内容回顾和面试题问答部分[临近毕业每天课前用40-60分钟对之前内容回顾.提问和补充,专挑班里不爱说话就的同学回答]. 期待 ...

  5. 不吹不擂,315 道 Python 面试题,欢迎挑战!

    各位大佬暂时先来315道题尝尝吧,后面有时间再继续补充. 有缘人如果看到这些题,不妨留言一下答案,来证明下你到底有多水,哈哈哈哈哈刀哈哈哈哈哈哈 第一部分 Python基础篇(80题) 1.为什么学习 ...

  6. 你想找的Python资料这里全都有!没有你找不到!史上最全资料合集

    你想找的Python资料这里全都有!没有你找不到!史上最全资料合集 2017年11月15日 13:48:53 技术小百科 阅读数:1931   GitHub 上有一个 Awesome - XXX 系列 ...

  7. 对于不平凡的我来说,从小我就在想为啥别人就什么都能拥有,而看看自己却什么都没有,对于原来的我就会抱怨爸妈怎么没有别人父母都能给自己想要的,可我从未想过父母的文化只有小学,其实父母内心也有太多的辛酸,所以我不甘愿如此,从此让我在大学里面直接选择一个让我巨大的转折————IT。

    对于不平凡的我来说,从小我就在想为啥别人就什么都能拥有,而看看自己却什么都没有,对于原来的我就会抱怨爸妈怎么没有别人父母都能给自己想要的,可我从未想过父母的文化只有小学,其实父母内心也有太多的辛酸,所 ...

  8. 1. 不吹不擂,第一篇就能提升你对Bean Validation数据校验的认知

    乔丹是我听过的篮球之神,科比是我亲眼见过的篮球之神.本文已被 https://www.yourbatman.cn 收录,里面一并有Spring技术栈.MyBatis.JVM.中间件等小而美的专栏供以免 ...

  9. 这才是你想要的 Python 可视化神器

    Plotly Express 是一个新的高级 Python 可视化库:它是 Plotly.py 的高级封装,它为复杂的图表提供了一个简单的语法. 受 Seaborn 和 ggplot2 的启发,它专门 ...

随机推荐

  1. IOS Git源代码管理工具

    .新建一个“本地仓库” $ git init .配置仓库 >告诉git你是谁 git config user.name lnj >告诉git怎么联系你 git config user.em ...

  2. B. Qualifying Contest_排序

    B. Qualifying Contest time limit per test 1 second memory limit per test 256 megabytes input standar ...

  3. SSM框架整合:转自:http://blog.csdn.net/zhshulin

    使用SSM(Spring.SpringMVC和Mybatis)已经有三个多月了,项目在技术上已经没有什么难点了,基于现有的技术就可以实现想要的功能,当然肯定有很多可以改进的地方.之前没有记录SSM整合 ...

  4. php开启短标签支持

    打开php.ini,找到 short_open_tag = Off ,将 Off 改为 On

  5. js 金额小写转换为大写

    <script> jQuery(document).ready(function () { //当金额文本框失去焦点时,自动将数字转化为大写填充到 大写的文本框中 $("#Amo ...

  6. 在jdbc基础上进阶一小步的C3p0 连接池(DBCP 不能读xml配置文件,已淘汰) 和DBUtils 中两个主要类QueryRunner和ResultSetHandler的使用

    首先看C3p0这个连接池,最大优势可以自动读取默认的配置文件 <?xml version="1.0" encoding="UTF-8"?> < ...

  7. BZOJ4128: Matrix(BSGS 矩阵乘法)

    Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 813  Solved: 442[Submit][Status][Discuss] Descriptio ...

  8. centos 7 编译安装mysql 详细过程

    一.配置防火墙,开启80端口.3306端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewall: systemctl stop fi ...

  9. LeetCode962. 最大宽度坡

    问题:最大宽度坡 给定一个整数数组 A,坡是元组 (i, j),其中  i < j 且 A[i] <= A[j].这样的坡的宽度为 j - i. 找出 A 中的坡的最大宽度,如果不存在,返 ...

  10. SSO 单点登录总结(PHP)

    本篇文章根据个人理解的知识整理汇总,如有不足之处,请大家多多指正. 单点登录(SSO--Single Sign On)的应用是很普遍的,尤其在大型网站系统中,比如百度,登录百度账号和,再转到百度经验. ...