妙计面试题-Python开发工程师

2018/03/24 面试题

Python主要的内置数据类型有哪些?

python主要的内置数据类型有:str,int,float,tuple,list,dict,set

print(dir(‘a’))输出的是什么?

会打印出字符型的所有的内置方法
['__add__', '__class__', '__contains__', '__delattr__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__getnewargs__', '__getslice__', '__gt__', '__hash__', '__init__', '__le__', '__len__', '__lt__', '__mod__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__rmod__', '__rmul__', '__setattr__', '__sizeof__', '__str__', '__subclasshook__', '_formatter_field_name_split', '_formatter_parser', 'capitalize', 'center', 'count', 'decode', 'encode', 'endswith', 'expandtabs', 'find', 'format', 'index', 'isalnum', 'isalpha', 'isdigit', 'islower', 'isspace', 'istitle', 'isupper', 'join', 'ljust', 'lower', 'lstrip', 'partition', 'replace', 'rfind', 'rindex', 'rjust', 'rpartition', 'rsplit', 'rstrip', 'split', 'splitlines', 'startswith', 'strip', 'swapcase', 'title', 'translate', 'upper', 'zfill']

给定两个list,A和B,找出相同元素和不同元素

  • 相同元素:same = A & B
  • 不同元素:differ = A ^ B

请反转字符串

new_str = old_str[::-1]

交换变量a,b的值

a,b = b,a

用select语句输出每个城市中心距离市中心大于20km酒店数

select count(hotel)i from hotel_table where distance >20 group by city

给定一个有序列表,请输出要插入值k所在的索引位置

def index(list, key)
	if key < list[0]:
		position = 0
	elif key >list[-1]:
		position = len(list)-1
	else:
	for index in range(list):
		if key>list[index] and list[index]>key:
		position = index

正则表达式贪婪与非贪婪模式的区别

  • 在形式上非贪婪模式有一个“?”作为该部分的结束标志
  • 在功能上贪婪模式是尽可能多的匹配当前正则表达式,可能会包含好几个满足正则表达式的字符串,非贪婪模式,在满足所有正则表达式的情况下尽可能少的匹配当前正则表达式

写出开头匹配字母和下划线,末尾是数字的正则表达式

^[A-Za-z] _.*\d$

请说明HTTP状态吗的用途,请说明常见的状态码机器意义。

通过状态码告诉客户端服务器的执行状态,以判断下一步该执行什么操作

常见的状态机器码有:

  • 100-199:表示服务器成功接收部分请求,要求客户端继续提交其余请求才能完成整个处理过程。
  • 200-299:表示服务器成功接收请求并已完成处理过程,常用200(OK请求成功)
  • 300-399:为完成请求,客户需要进一步细化请求。302(所有请求页面已经临时转移到新的url),304、307(使用缓存资源)。
  • 400-499:客户端请求有错误,常用404(服务器无法找到被请求页面),403(服务器拒绝访问,权限不够)
  • 500-599:服务器端出现错误,常用500(请求未完成,服务器遇到不可预知的情况)

当输入http:mioji3.com时,返回页面的过程中发生了什么

  • 浏览器向DNS服务器发送mioji3.com域名解析请求
  • DNS服务器返回解析后的ip给客户端浏览器,浏览器想该ip发送页面请求
  • DNS服务器接收到请求后,查询该页面,并将页面发送给客户端浏览器
  • 客户端浏览器接收到页面后,解析页面中的引用,并再次向服务器发送引用资源请求
  • 服务器接收到资源请求后,查找并返回资源给客户端
  • 客户端浏览器接收到资源后,渲染,输出页面展现给用户

闭包

在函数内部再定义一个函数,并且这个函数调用外部函数的变量,这个函数和用到的变量称之为闭包

Search

    Table of Contents