且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

python---》客户端与服务端的基础(做一个简单的客户端与服务端)

更新时间:2022-09-18 16:28:03

 今天我们分享的内容是python简单的客户端与服务端,此处仅介绍一些简单的函数,并作出来一个玩儿玩儿。

      在开始之前呢,先用一张图表示他们之间的关系

    python---》客户端与服务端的基础(做一个简单的客户端与服务端)

我们来按照这个步伐依次介绍:

服务端:

import socket
server=socket.socket()#此处是为了创建出来一个服务端,第一步
server.bind(('localhost',9999))#将套接字绑定到地址,loclhost是当地地址的的意思,如果要想查看当地地址的话,打开控制台(运行--》cmd) 按ipconfig即可查到
server.listen(5) #进行监听
count=0#设置消息的接受个数
while True:   # 为什么需要加个循环呢,嘿嘿,一个服务端总不能只接受一个客户端吧。
   conn, addr = server.accept()  # conn连接的标记位,addr连接的地址,或者用另一种说法:接受连接并返回(conn,address),其中conn是新的套接字对象,可以用来接收和发送数据。address是连接客户端的地址
   print("new conn ",addr)#打印对方地址
   #接下来再来一个while True,用来不断接受一个客户端发来的消息
   while True:
       data=conn.recv(1024)#开始接受新消息,1024指接收消息的大小
       if not data:#没有数据
           print("客户端断开啦")
           break
       print("执行命令",data.decode())#对发过来进行打印
       conn.send(data.upper())
       count += 1
       if count > 10: break

server.close()#对服务端进行关闭





#客户端

import socket
client=socket.socket()
client.connect(('localhost',9999))#进行连接
#不断发送消息
while True:
   cmd=input(">>:").strip()#此函数可以用来发送信息,
   client.send(cmd.encode("utf-8"))#服务器与客户端之间的连接需要用到utf-8进行编码
   cmd_receive=client.recv(1024)
   print("recv:", cmd_receive)

client.close()#对客户端进行关闭

     



      本文转自眉间雪 51CTO博客,原文链接:http://blog.51cto.com/13348847/1981397,如需转载请自行联系原作者