python的简单编程实例_python 网络编程详解及简单实例

详细解释python的网络编程网络编程的专利权应该属于Unix,符合自己的特点和语法实现各种平台(如windows、Linux等)和语言(Java、C、c++、python等)是相似的。在我看来,如果你了解Unix socket网络编程,你还知道其他形式的网络编程方法。这句话不太严格。准确地说,应该是说,如果你理解了套接字编程原理,你也知道网络编程。所不同的是,每个平台,每种语言都有自己的专属语法,我们可以直接和灵活应用。下面是一个例子最基本的网络编程与python实现,也就是说,依赖于客户机-服务器体系结构实现单向客户机和服务器之间的\u201C数据流\u201D。我们用两种方法来实现这一目标,一种方法是最原始套接字编程,,另一个方法是使用面向对象的python封装第一种方法。

要求:客户端输入数据并将其发送到服务器,和服务器生成(时间戳+数据)封装数据响应客户端。从套接字编程包括两种类型:面向连接和无连接,这两种类型对应于TCP数据流和UDP数据包,分别。因此,我们实现这两种方法。1. Python套接字编程面向连接的TCP套接字编程:# - * -编码:utf - 8 - * 3套接字从时间进口进口* ctime #地址和PortHOST = \\u201C#构建客户机sockettcpCliSock addr =()打印\u201D:\u201Caddr #接受数据和processwhile如此:数据= (BUFSIZ)如果不是数据:打破((% s) % s的% (ctime(),数据))#关闭客户端套接字()除了EOFError KeyboardInterrupt:()# - * -编码:utf - 8进口* # - *\u2014\u2014从套接字的地址和PortHOST =\u201C端口= 21567 ADDR =(主机、端口)# BufferSizeBUFSIZ = 1024 #构建sockettcpCliSocket =插座(AF_INET SOCK_STREAM) (ADDR),而真正的:如果没有数据:打破#发送数据(数据)# recv datadata = (BUFSIZ)如果不是数据:打破#显示数据()无dataprint连接的UDP套接字编程# - * -编码:utf - 8 - *\u2014\u2014从套接字从时间进口进口* ctime #地址和PortHOST = \'数据,addr = (BUFFSIZE)打印'收到了消息:\u201C+数据+\u201D:\u201Caddr, ((% s) % s的% (ctime(),数据),addr)除了EOFError KeyboardInterrupt:() # - * -编码:utf - 8进口* # - *\u2014\u2014从套接字的地址和PortHOST = ' localhost 'PORT = 8000 addr =(主机、端口)# BufferSizeBUFSIZ = 1024 #构建socketudpCliSock =插座(AF_INET SOCK_DGRAM),而事实:(数据(addr)数据= (BUFSIZ)如果不是数据:breakprint数据()二,基于封装类SocketServer的网络编程# - * -编码:utf - 8 - *\u2014\u2014从SocketServer进口TCPServer TCP, StreamRequestHandler SRHfrom时间进口ctime #地址和PortHOST = \\u201C#循环process_forever() # - * -编码:utf - 8进口* # - *\u2014\u2014从套接字的地址和PortHOST = \

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值