python面试题

论坛 期权论坛 期权     
程序伴一生   2019-7-8 05:52   3486   0
  • TCP/IP协议四个层:应用层、传输层、网络层、链路层
  • 简述 TCP 和 UDP 的区别以及优缺点1.UDP 是面向无连接的通讯协议,UDP 数据包括目的端口号和源端口号信息。优点:UDP 速度快、操作简单、要求系统资源较少,由于通讯不需要连接,可以实现广播发送缺点:UDP 传送数据前并不与对方建立连接,对接收到的数据也不发送确认信号,发送端不知道数据是否会正确接收,也不重复发送,不可靠。2.TCP 是面向连接的通讯协议,通过三次握手建立连接,通讯完成时四次挥手优点:TCP 在数据传递时,有确认、窗口、重传、阻塞等控制机制,能保证数据正确性,较为可靠。缺点:TCP 相对于 UDP 速度慢一点,要求系统资源较多。
  • 用浏览器访问 www.baidu.com 的过程先要解析出 baidu.com 对应的 ip 地址1.要先使用 arp 获取默认网关的 mac 地址2.组织数据发送给默认网关(ip 还是 dns 服务器的 ip,但是 mac 地址是默认网关的 mac 地址)  默认网关拥有转发数据的能力,把数据转发给路由器3.路由器根据自己的路由协议,来选择一个合适的较快的路径转发数据给目的网关4.目的网关(dns 服务器所在的网关),把数据转发给 dns 服务器5.dns 服务器查询解析出 baidu.com 对应的 ip 地址,并原路返回请求这个域名的 client6.得到了 baidu.com 对应的 ip 地址之后,会发送 tcp 的 3 次握手,进行连接7.使用 http 协议发送请求数据给 web 服务器8.web 服务器收到数据请求之后,通过查询自己的服务器得到相应的结果,原路返回给浏览器。9.浏览器接收到数据之后通过浏览器自己的渲染功能来显示这个网页。10.浏览器关闭 tcp 连接,即 4 次挥手结束,完成整个访问过程
  • django的生命周期1.当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端请求头和请求体中会包含浏览器的动作(action),这个动作通常为get或者post,体现在url之中.2.url经过Django中的wsgi,再经过Django的中间件,最后url到过路由映射表,在路由中一条一条进行匹配,一旦其中一条匹配成功就执行对应的视图函数,后面的路由就不再继续匹配了.3.视图函数根据客户端的请求查询相应的数据.返回给Django,然后Django把客户端想要的数据做为一个字符串返回给客户端.4.客户端浏览器接收到返回的数据,经过渲染后显示给用户.
  • 计算2019年3月的每天
  1. import calendarimport datetimedays = calendar.monthrange(2019, 3)[1]days_list=[]for i in range(0,days):    day_time=(datetime.datetime(2019,3,1)+datetime.timedelta(days=i)).strftime('%Y-%m-%d')    days_list.append(day_time)print(days_list)
复制代码
  • 计算上个月第一天和最后一天
  1. import datetimefist = datetime.date(datetime.date.today().year,datetime.date.today().month-1,1)last = datetime.date(datetime.date.today().year,datetime.date.today().month,1)-datetime.timedelta(1)
复制代码
  • 不用sort对列表排序
  1. L = [2,3,5,4,9,6,8,7,1]T = []while len(L) > 0:    m = min(L)    L.remove(m)    T.append(m)print(T)
复制代码
  • 列表转字典
  1. a=['name','age']b=['小明','12']c=dict(zip(a,b))print(c)
复制代码
结果:{'name': '小明', 'age': '12'}

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:
帖子:
精华:
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP