在线客服
扫描二维码
下载博学谷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开发中给定两个列表怎么找出他们相同元素和不同元素?相同元素:print(set1&set2);不同元素:print(set1^set2)
13036
2019-06-28 14:18:46
Python开发中match和search的区别是什么
Python开发中match和search的区别:match()函数只检测 RE 是不是在string的开始位置匹配,search()会扫描整个string查找匹配;也就是说 match()只有在0位置匹配成功的话才有返回,如果不是开始位置匹配成功的话,match()就返回none。
8875
2019-07-01 16:12:22
Python面试题 Tornado的核心是什么?
Tornado 的核心是 ioloop 和 iostream 这两个模块,前者提供了 一个高效的 I/O 事件循环,后者则封装了 一个无阻塞的 socket 。 通过向 ioloop 中添加网络 I/O 事件,利用无阻塞的 socket ,再搭配相应的回调函数,便可达到梦寐以求的高效异步执行。
11856
2019-07-02 17:43:40
Python基础学习笔记之运算符
许多人对于编程学习中的数学能力都存在或多或少的误解,虽然每一种编程语言都包含了处理数字和进行数学计算的方法,但是并不像一些人想象得那么难,相反还十分简单,毕竟不是一定要数学天才才能学得好编程。本文为大家总结了关于运算符的Python基础学习笔记,下面一起来看看吧!
5414
2020-04-28 10:36:49
类装饰器使用方法分享及总结
装饰器本质上是一个函数,可以让其他函数在不需要做任何代码变动的前提下增加额外的功能,装饰器的返回值也是一个函数对象(函数的引用),需学习掌握类装饰器的使用方法。
3519
2021-12-02 15:15:54
