在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
自从互联网诞生以来,基本上所有的程序都属于网络程序,也就需要设计到网络编程,在python中,就是在python程序本身这个进程内,链接别的服务器进程的通信端口进行通信。在Python程序员找工作的时候,京城被问到关于网络编程的问题。下面就和大家分享一下那些面试中经常出现的问题吧。
1.Tcp 协议和 udp 协议有什么区别?
(1)TCP 面向连接(如打电话要先拨号建立连接);UDP 是无连接的,即发送数据之前不需要建立连接。
(2)每一条 TCP 连接只能是点到点的;UDP 支持一对一,一对多,多对一和多对多的交互通信。
(3)TCP 首部开销 20 字节;UDP 的首部开销小,只有 8 个字节。
(4)TCP 的逻辑通信信道是全双工的可靠信道,UDP 则是不可靠信道。
2.Post 和 get 区别?
(1)GET 请求的数据会暴露在地址栏中,而 POST 请求则存在表单中提交所以 post 相对安全。
(2)post 传输数据比 get 大。
(3)post 比 get 安全。
3.cookie 和 session 的区别?
(1)cookie 数据存放在客户的浏览器上,session 数据放在服务器上。
(2)cookie 不是很安全,别人可以分析存放在本地的 COOKIE 并进行 COOKIE欺骗考虑到安全应当使用 session。
(3)session 会在一定时间内保存在服务器上。当访问增多,会比较占用服务器的性能考虑到减轻服务器性能方面,应当使用 COOKIE。
(4)单个 cookie 保存的数据不能超过 4K,很多浏览器都限制一个站点最多保存 20 个 cookie。
(5)建议:将登陆信息等重要信息存放为 SESSION其他信息如果需要保留,可以放在 COOKIE 中。
4.什么是僵尸进程和孤儿进程,怎么避免僵尸进程?
(1)孤儿进程:父进程退出,子进程还在运行的这些子进程都是孤儿进程,孤儿进程将被会被其它进程收养,不会造成影响。
(2)僵尸进程:子进程退出,而父进程迟迟不回收,造成资源浪费。
(3)避免僵尸进程的方法:1.fork 两次用孙子进程去完成子进程的任务。2.用 wait()函数使父进程阻塞。
以上是4道常见的关于Python网络编程的面试题。对于没有接触过网络编程的同学,可能会觉得网络编程相关知识非常高深,当时熟悉其语法之后,就会变得非常简单。相对Python基础的面试类题目,网络编程在面试过程中并非常见的题目。不过作为工作中常用的核心技术,python开发工程师是务必需要掌握网络编程的。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
七个提升Python运行性能的小技巧
七个提升Python运行性能的小技巧有使用局部变量,减少函数调用次数采用映射替代条件查找,直接迭代序列元素,采用生成器表达式替代列表解析,先编译后调用,模块编程习惯。
8441
2019-07-26 18:14:29
django中间件的使用方法博学谷讲师总结
django中间件的使用方法,Django在中间件中预置了六个方法;初始化、处理请求前、处理视图前、处理模板响应前、处理响应后、异常处理。
7726
2019-07-02 17:31:17
Python面试题 Tornado的核心是什么?
Tornado 的核心是 ioloop 和 iostream 这两个模块,前者提供了 一个高效的 I/O 事件循环,后者则封装了 一个无阻塞的 socket 。 通过向 ioloop 中添加网络 I/O 事件,利用无阻塞的 socket ,再搭配相应的回调函数,便可达到梦寐以求的高效异步执行。
10132
2019-07-02 17:43:40
用Python编写第一个程序
如今,IT编程教育的市场趋势逐渐往泛互联网人群发展,这其中尤其是学习Python的人越来越多。本文要讲的就是怎么开始用Python编写第一个程序,开启你的学习之旅。首先在大家正式开始自己的编程之路之前,应该先把文本编辑器安装好,然后掌握命令行终端的运行方法。在一切准备就绪的时候,我们就可以开始第一个程序的编写了~
5222
2020-04-28 09:56:50
如何使用Python发送MMS消息?
如何使用Python发送MMS消息?MMS(Multimedia Messaging Service多媒体消息服务)与文本消息基本相同,只不过嵌入了图像、视频或 PDF 文件等多媒体,可以通过文本消息发送这些多媒体。
2882
2022-02-16 15:50:21