Python tcp socket编程详解
初学脚本语言Python,测试可用的tcp通讯程序:
服务器:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import socket
import threading
import time
def tcplink(sock, addr):
print('Accept new connection from %s:%s...' % addr);
sock.send(b'Welcome!!!');
while True:
data = sock.recv(1024);
time.sleep(1);
if not data or data.decode('utf-8') == 'exit':
break;
sock.send(b'Hello, %s!' % data);
sock.close();
print('Connection from %s:%s closed.' % addr);
if __name__ == "__main__":
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM);
s.bind(('127.0.0.1', 9090));
s.listen(8); #监听8个客户端;
print('waiting for connection...');
while True:
sock, addr = s.accept();
t = threading.Thread(target=tcplink, args=(sock,addr));
t.start();
客户端:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import socket
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM);
s.connect(('127.0.0.1', 9090));
print(s.recv(1024).decode('utf-8'));
for data in [b'lk', b'aa', b'bb']:
s.send(data);
print(s.recv(1024).decode('utf-8'));
s.send(b'exit');
s.close();
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
Copyright© 2013-2020
All Rights Reserved 京ICP备2023019179号-8