博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

socket编程之多次收发数据

Posted on 2017-07-06 18:41  开飞机的贝塔  阅读(757)  评论(0编辑  收藏  举报

客户端:

#-*- coding:utf-8 -*-
#客户端程序
import socket

client = socket.socket() #1、创建一个客户端对象

client.connect(('localhost',2235)) #2、连接到服务器

while True:
	msg = input("-->").strip()

	client.send(msg.encode()) #3、发送数据

	data = client.recv(1024) #4、接收数据

	d = data.decode()

	print('接受的数据:',d)

client.close() #5、关闭客户端

 服务器:

#-*- coding:utf-8 -*-
#服务器程序
import socket

server = socket.socket() #1、创建服务器套接字对象

server.bind(('localhost',2235)) #2、绑定ip和端口

server.listen() #3、让套接字对象处于监听状态
print("正在监听...")

while True:
	conn,addr = server.accept() #接收客户端报文
	print("报文来了!")
	print("conn:",conn,"addr:",addr)

	while True:
		data = conn.recv(1024) #接收报文中的数据
		if not data:break
		else:
			d = data.decode()
			print("客户端的数据:",d)
			conn.send(data.upper()) #发送响应报文

server.close() #关闭服务器

 附加:

如何在sublime3中关闭正在执行的程序?

答:tools-->取消编译。