Python 问题集

语言基础


 

系统工具


 

并行编程


● [ Python编程P242 ] 服务器代码中while循环一直等待客户端连接,如果没有客户端连接是否会一直处于等待状态?

from socket import socket , AF_INET,SOCK_STREAM
port = 50008
host='localhost'
def server():
    sock = socket(AF_INET,SOCK_STREAM)
    sock.bind(('',port))
    sock.listen(5)
    #等待客户端连接
    while True:
        conn,addr=sock.accept() #如果没有客户端连接会怎么样?是否一直循环?
        data = conn.recv(1024)
        reply = 'server got :[%s]' % data
        conn.send(reply.encode())




书中有写默认情况下会保持阻塞,但是说的不清楚。实际测试中,sock.accept()后面的代码会阻塞,直到有客户端的连接。
View Code

● 套接字和TCP/IP 、UDP的关系?

● 文件描述符是什么?

・linux中一切都是文件,比如硬件设备、磁盘、进程、线程等等

・对于这些文件有相应的索引,我们吧这个索引叫做文件描述符,简称fd(file descriptor)

・fd 是一个非负整数,每次打开或创建一个文件,内核就会向进程返回一个fd,从0往后一次递增

・Linux下叫做文件描述符,Windows下叫做句柄

参考https://www.jianshu.com/p/504a53c30c17

● 匿名管道是什么、命名管道是什么、两者区别?

● b'...' 是什么意思?

https://www.cnblogs.com/remly/p/11438789.html

● 信号是什么?

● 使用multiprocessing模块是否需要同步化序列?

● 同样是Socket,怎么区分是tcp还是udp?

socket.socket(socket.AF_INET, SOCKET.SOCK_STREAM) -> tcp

socket.socket(socket.AF_INET, SOCKET.SOCK_DGRAM) -> udp

 

 

网络编程


● 什么是CGI? 什么是CGI脚本?

CGI是一种协议。通过cgi协议,web server可以将动态请求和相关参数发送给专门处理动态内容的应用程序。

参考:https://www.cnblogs.com/f-ck-need-u/p/7627035.html

●CGI脚本如何向浏览器发送html+js+css ?

●p1131说服务器发送cookie到前端,那么前端怎么取到cookie呢?

●CGI中返回的"Content-type: text/html"之后为什么一定要加一个空行?

原文地址:https://www.cnblogs.com/remly/p/11341684.html