socket 网络连接基础

socket 客户端

import socket

1.client = socket.socket()  # socket.TCP/IP 选择连接的类型,默认为本地连接

2.client.connect(('localhost', 6000))  # connect(a.ip, a.port) a.ip = 'localhost, a.port = 6000  服务器连接

3.socket.send('吃饭'.encode('utf-8'))  # 发送数据 发送的数据需要转换为字节格式

4.data = socket.recv(1024)  #接受数据 1024表示接受字节的大小 

5. data = data.decode() 把字节格式转换为utf-8格式

6.client.close()  关闭客户端 

socket 服务器端 

import socket

1.server = socket.socket()  # socket.TCP/IP 选择连接的类型,默认为本地连接

2.server.bind(('localhost', 6000))  # connect(a.ip, a.port) a.ip = 'localhost, a.port = 6000  服务器连接

3.server.listen()  #服务器接听

4.conn, addr = socket.accept() #服务器接受应答

5.data = conn.recv(1024)        #服务器接受信息

6.conn.send(data)                  #将接受的信息返回给客户端

7.server.close()                         #关闭服务器端 

服务器端代码

 1 import socket 
 2 
 3 server = socket.socket()
 4 server.bind(('localhost', 6000))
 5 
 6 server.listen()
 7 while True:
 8     conn, addr = server.accept()     #其他分机继续接收
 9     while True:
10         data = conn.recv(1024)
11         conn.send(data)
12         if len(data) == 0:         #如果接收到的信号为空,挂断
13             break
14         
15 server.close()

客户端代码

 1 import socket
 2 
 3 client = socket.socket()
 4 client.connect(('localhost', 6000))
 5 
 6 while True:
 7   msg = input('please give me you want to send')
 8   if len(msg) == 0:
 9       continue
10   client.send(msg.encode('utf-8'))
11   data = client.recv(1024)
12   print('recv', data.decode())
13 
14 client.close()

猜你喜欢

转载自www.cnblogs.com/my-love-is-python/p/9104129.html