初学脚本语言Python,测试可用的tcp通讯程序:
服务器:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
#!/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();
|
客户端:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
#!/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();
|
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!