衡水网站设计哪家专业,网站分站的实现方法,网站建设官方商城,青岛市北区核酸检测Sockte是计算机之间进行网络通信的一套程序接口#xff0c;相当于在发送端和接收端之间建立一个通信管道。在实际应用中#xff0c;一些远程管理软件和网络安全软件大多数依赖于Socket来实现特定功能#xff0c;由于TCP方式在网络编程中应用非常频繁#xff0c;此处将对TCP…Sockte是计算机之间进行网络通信的一套程序接口相当于在发送端和接收端之间建立一个通信管道。在实际应用中一些远程管理软件和网络安全软件大多数依赖于Socket来实现特定功能由于TCP方式在网络编程中应用非常频繁此处将对TCP编程进行讲解
编写TCP时一般会用到Socket模块其方法主要包括
connect(address)连接远程计算机send(bytes[,flags])发送数据recv(bufsize[,flags])接收数据bind(address)绑定地址listen(backlog)开始监听等待客户端连接accept()响应客户端的一个请求接收一个连接
使用TCP进行通信首先需要在客户端和服务端建立连接并且要在通信结束后关闭连接以释放资源。由于TCP是面向连接的因此相对于UDP提供更高的可靠性。下面展示如何通过TCP进行通信 例如设计一个对话系统“小艾”该应用分为两部分一部分为服务端一部分为客户端。客户端发送请求服务端返回应答消息两部分代码如下
服务器段
#! /usr/bin/python
#coding:utf-8
#服务器段
import socket
language {what is your name:I am Tom,how old are you:25,bye:bye!}
host 127.0.0.1
port 6666
s socket.socket(socket.AF_INET,socket.SOCK_STREAM)
s.bind((host,port))
s.listen(1)
print(listening at port 6666)
conn,addr s.accept()
print(Connect by:,addr)
while True:data conn.recv(1024)data data.decode()if not data:breakprint(Received message:,data)conn.sendall(language.get(data,Nothing).encode())
conn.close()
s.close()客户端程序
#coding:utf-8
import socket,sys
host 127.0.0.1
port 6666s socket.socket(socket.AF_INET,socket.SOCK_STREAM)
try:s.connect((host,port))
except Exception as e:print(Server not found!)sys.exit()while True:c input(YOU SAY:)s.sendall(c.encode())data s.recv(1024)data data.decode()print(Received:,data)if c.lower() 再见:breaks.close()
运行结果