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();
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!
更多python之tcp socket编程详解及简单。