python后端面试题答案(仅参考)

数学&数据库问答题(共4题,合计24分)
1.答:
不包含6或8或9的总数:
1位数(0-9):10-3=7个
2位数(10-99):90-6×7=48个
3位数(100-999):900-6×7×7=606
4位数(1000-9999):9000-6×7×7×7=6942
包含6或8或9的数字总数为:10000-7-48-606-6942=2397

2.答:
redis:数据量较小的性能操作和运算上。
memchache:用于在动态系统中减少数据库负载,提升性能;做缓存,提高性能。
mongoDB:主要解决海量数据的访问效率问题。

3.答:

SELECT COUNT(*),MAX(num) FROM shop_order WHERE shop_id=192

4.答:
分析SQL语句的执行计划:explain+SQL语句
查看正在执行的SQL:使用命令show processlist;可以列出当前执行的所有sql

组合题(共2道大题,合计41.0分)
1.1
python后端面试题答案(仅参考)_第1张图片
1.2
python后端面试题答案(仅参考)_第2张图片
1.3
python后端面试题答案(仅参考)_第3张图片
2.1
8×3-3-500/100×0.5=18.5元

2.2
8×3-500/100×0.5=21.5元
10×3-3-500/100×0.5=24.5元

2.3
(10×3-3)×0.85=22.95元
10×3-3=27元

Python&算法问答题(共6题,合计35.0分)

list_b = list(set(list_a))
def foo(a,c=0,*args,**kwargs):
	print('a=',a,'c=',c,'args=',args,'kwargs=',kwargs)
value = dict_a['key_a']  if 'key_a' in dict_a.keys() else 1
dict_a = {k[0]:list(k[1:]) for k in list_a }
1920
def bubble_sort_flag(list):
    length = len(list)
    for index in range(length):
        flag = True
        for j in range(1,length-index):
            if list[j-1]>list[j]:
                list[j-1],list[j] = list[j],list[j-1]
                flag = False
        if flag:
            # 没有发生交换,直接返回list
            return list
    return list

你可能感兴趣的:(python后端面试题答案(仅参考))