python中的网络编程

该文章展示了如何使用Python的socket库创建一个TCP服务器,服务器监听特定端口,等待客户端连接。当客户端连接后,服务器接收并打印客户端发送的数据,然后关闭连接。客户端则初始化socket,连接到服务器,发送一条消息,然后关闭连接。
摘要由CSDN通过智能技术生成

一、服务端

from socket import *

# 我们要使用socket套接字,它里面有两个参数,一个是指的是使用IPv4地址,
# 另一个是套接字的类型,也就是TCP协议,创建套接字对象
server_socket = socket(AF_INET, SOCK_STREAM)  # 建立TCP套接字

# 在使用bind函数,指定IP地址和端口
server_socket.bind(('localhost', 8888))  # 本机监听8899端口

# 使用listen函数,他是指定最大连接的次数
server_socket.listen(5)  # 最大连接数
print('等待接受连接')

# 在使用accept函数,一旦调用accept()方法,服务端阻塞在这里,等着客户端连接了。
# 这时当我们启动客户端时,客户端实例化socket,通过IP找到应用程序。
# 这时accept()马上就会有反应。accept()方法执行完就返回一个socket。
# 通过这个socket就可以与刚建立连接的这个客户端进行通讯了。
# 客户端创建一个socket,服务端通过accept()接收一个socket。
client_socket, client_info = server_socket.accept()

# recv用于从套接字接收数据。
# 它会阻塞程序的执行,直到接收到指定数量的字节数据或者接收操作发生错误。
# 一般情况下,它会返回接收到的数据。
recv_data = client_socket.recv(1024)  # 最大接受1024个字符
print(f'收到消息:{recv_data.decode("gbk")},来自:{client_info}')

# close是一个用于关闭套接字连接的方法
client_socket.close()
server_socket.close()

二、客户端

from socket import *

# 我们要使用socket套接字,它里面有两个参数,一个是指的是使用IPv4地址,
# 另一个是套接字的类型,也就是TCP协议,创建套接字对象
client_socket = socket(AF_INET, SOCK_STREAM)  # 建立TCP套接字

# 在使用bind函数,指定IP地址和端口
client_socket.connect(('127.0.0.1', 8899))

# send发送数据到已连接的套接字。可以发送字节或字节串数据。
client_socket.send('hello'.encode('gbk'))

# close发送数据到已连接的套接字。可以发送字节或字节串数据。
client_socket.close()

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值