基于python实现简单C/S模式代码实例
C/S模式就是指客bai户端/服务器模式,du是计算机软件协同工作的一种模式。zhi
由于Web浏览器的兴起,B/S模式逐步取代了daoC/S模式,被更广泛地应用。随着计算机网络技术的成熟和应用普及,特别是局域网的发展、PC机的出现,越来越多的用户和企业开始使用计算机管理一些事务。
PC机的资源没有大型、中型甚至小型主机丰富,但将多台PC机联成网,必然会增加资源含量,各个用户都在网络上来共享所有资源。根据客户/服务器(Client/Server简记为C/S)体系结构的概念,至少用两台计算机来分别充当客户机和服务器角色。
服务器端代码:
#!/usr/bin/python
importtime,socket,threading
#threadhandlefunction
deftcplink(sock,addr):
print'Acceptnewconnectionfrom%s:%s...'%addr
sock.send('Welcome!')
whileTrue:
data=sock.recv(1024)
time.sleep(1)
ifdata=='exit'ornotdata:
break
sock.send('Hello,%s!'%data)
sock.close()
print'Connectionfrom%s:%sclosed.'%addr
#createsocketobject
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#listenport
s.bind(('127.0.0.1',9999))
#startlisten
s.listen(5)
#printprompt
print'Waitingforconnection...'
whileTrue:
#acceptanewconnection
sock,addr=s.accept()
#createnewthreadtohandletcpconnection
t=threading.Thread(target=tcplink,args=(sock,addr))
t.start()
客户端代码:
#!/usr/bin/python
#importmodule
importsocket
#createTCPobject
s=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
#connectsina
s.connect(('127.0.0.1',9999))
#receivewelcome
prints.recv(1024)
fordatain['zjw','ygl','lele']:
#senddata
s.send(data)
prints.recv(1024)
whileTrue:
data=1
设计思路还是那样的,服务器端监听固定端口,等待连接,客户端来连接,然后互相发送消息
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。