python

python socket客户端接收数据的方法是什么

小亿
156
2023-09-07 22:38:34
栏目: 编程语言

Python Socket客户端接收数据的方法有两种:

  1. 使用recv()方法:可以使用Socket对象的recv()方法来接收数据。该方法有一个参数表示要接收的数据的最大长度。该方法会一直阻塞,直到接收到指定长度的数据或者连接关闭。接收到的数据以字符串形式返回。

示例代码:

import socket
# 创建Socket对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
# 连接服务器
server_address = ('127.0.0.1', 8888)
client_socket.connect(server_address)
# 接收数据
data = client_socket.recv(1024)
print(data.decode())
# 关闭Socket连接
client_socket.close()
  1. 使用recvfrom()方法:如果是使用UDP协议进行通信,可以使用Socket对象的recvfrom()方法来接收数据。该方法与recv()方法类似,但返回的是一个元组,包含接收到的数据和发送方的地址。

示例代码:

import socket
# 创建Socket对象
client_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 绑定本地地址和端口
client_address = ('127.0.0.1', 8888)
client_socket.bind(client_address)
# 接收数据
data, server_address = client_socket.recvfrom(1024)
print('接收到来自{}的数据:{}'.format(server_address, data.decode()))
# 关闭Socket连接
client_socket.close()

注意:以上示例代码中的服务器地址和端口需要根据实际情况进行修改。

0
看了该问题的人还看了