|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
先上服务器的代码:
from socket import *
from time import ctime
HOST = ''
PORT = 21567
BUFSIZ = 1024
ADDR = (HOST, PORT)
tcpSerSock = socket(AF_INET, SOCK_STREAM)
tcpSerSock.bind(ADDR)
tcpSerSock.listen(5)
while True:
print('waiting for connection...')
tcpCliSock, addr = tcpSerSock.accept()
print('...connected from :', addr)
while True:
date = tcpCliSock.recv(BUFSIZ)
if not date:
break
tcpCliSock.send('[%s] %s' % (
bytes(ctime(), 'utf-8'), date))
tcpCliSock.close()
tcpSerSock.close()
下面是客户端:
from socket import *
HOST = 'localhost'
PORT = 21567
BUFSIZ = 1024
ADDR = (HOST, PORT)
tcpCliSock = socket(AF_INET, SOCK_STREAM)
tcpCliSock.connect(ADDR)
while True:
data = input('> ')
if not data:
break
tcpCliSock.send(data)
data = tcpCliSock.recv(BUFSIZ)
if not data:
break
print(data.decode('utf-8'))
tcpCliSock.close()
这些代码都是我照着<python核心编程>这本书抄的,但是先运行服务器,再运行客户端,输入后会报错。
错误出现在17行,是 TypeError: a bytes-like object is required, not 'str'
求大神解决,谢谢 |
|