学习Python套接字编程基础-基本要素编程教程

在今天的教程中,我们将介绍 Python 套接字编程的基础知识。Python 的套接字接口类似于 C 和 Java。所以,如果你已经有 C/Java 编程背景,学习 Python 编程要容易得多。这里写的文章都是笔记和记录的形式,写代码的过程中少不了上网。有的是自己写的,也有自己的点子赞的。看文章前,小编推荐了一个企鹅群,群里的成员交流非常活跃。在体验中遇到陷阱应用编程接口和套接字,也有初学者交流讨论。群内整理整理了大量的PDF书籍和学习资料。程序员也很热心帮助解决问题,并讨论工作解决方案。很好的学习交流场所!该组大约有数千人。喜欢python的朋友可以加入python群:526929231 欢迎大家交流讨论各种花样小技巧,一起快速成长

Socket是python中用于网络传输的协议,包括TCP和UDP

但是在 Python 中使用套接字要简单得多,可以促进快速的应用程序开发。因此应用编程接口和套接字,如果 Python 是您的第一种编程语言,请不要担心并且不要感到幸运。

Python 提供了两种 API 库供我们用于套接字编程。在底层,Python 利用“sockets”库为无连接和面向连接的网络协议实现客户端和服务器模块。但是,在更高级别上,您可以使用 ftplib 和 httplib 等库与 FTP 和 HTTP 等应用程序级网络协议进行交互。

在这篇文章中,我们将讨论专门为 Python 套接字编程设计的最广泛使用的“套接字”库。我们将通过该库的主要功能帮助您构建客户端和服务器模块。最后,您将通过示例代码看到客户端-服务器通信的演示。

您可能需要使用下面的目录来查找您的兴趣点。

Python 套接字编程的基础知识。

套接字是学习 Python 套接字编程需要了解的最重要和最基本的实体。在本节中,我们介绍了创建套接字和与套接字通信的套接字概念和相关方法。

Python 套接字编程。

什么是插座?

套接字是双向通信链路的端点。端点是 IP 地址和端口号的组合。

对于Client-Server通信,需要在两端配置socket来发起连接,监听接收到的消息,然后在两端发送响应,建立双向通信。

套接字允许位于同一台计算机上的进程之间进行通信,或者位于不同环境中的不同机器上,甚至跨越不同的大陆。

如何在 Python 中创建套接字对象?

要创建/初始化套接字,我们使用 Python 的套接字模块中定义的 socket.socket() 方法。它的语法如下。

AF_UNIX,或

AF_INET(IP 版本 4 或 IPv4)。

SOCK_STREAM(用于面向连接的协议,例如 TCP),或

SOCK_DGRAM(用于无连接协议,例如 UDP)。

这就是创建套接字对象的方式。但是如果上面的例子无法实例化一个套接字怎么办?信息信息

您需要将上述代码包装在 Python try 和 except 块中。借助 Python 异常处理机制,您可以追踪错误的原因。

在接下来的部分中,我们将解释 Socket 库中可用于创建客户端/服务器程序的函数。

Python 套接字库中有多少个套接字方法可用?

对于 Python 套接字编程,我们可以将套接字方法分为以下三类。

服务器套接字有哪些方法可用?

服务器套接字方法。

图片[1]-学习Python套接字编程基础-基本要素编程教程-老王博客

客户端套接字有哪些方法可用?

客户端的 Socket 方法。

Python 中可用的通用套接字方法有哪些?

通用套接字方法。

至此,我们已经列出了“sockets”库提供的所有用于Python socket编程的socket工具。接下来,我们将向您展示客户端-服务器通信的套接字函数调用工作流程。请参阅下面的快照,它说明了在客户端和服务器之间建立通道所需的每个套接字调用。

Python 套接字编程工作流程。

下图清楚地描绘了客户端和服务器端点的套接字方法的调用顺序。

因此,从上面的流程图中,您将了解在 Python 中创建客户端/服务器套接字程序所需的所有套接字方法。现在是时候设置真正的 Python 客户端和服务器组件了。

Python 中客户端-服务器通信的示例代码。

客户端-服务器程序将具有以下两个 Python 模块。

我们先看一下服务器代码。请注意,我们已经在 Python 3 上测试了此代码。

Python-Server.Py

服务器模块将向客户端发送数据并从客户端接收数据。

Python-Client.Py

在客户端,我们创建一个套接字并使用提供的主机和端口值连接到服务器。

如何运行客户端服务器程序?

您需要从单独的命令窗口运行这两个模块,或者您可以在两个不同的 IDLE 实例中运行它们。

首先,您执行服务器模块,然后执行客户端。下表给出了客户端服务器程序的完整执行摘要。

检查程序兼容性。

请注意,我们已经使用 Python 3 版本测试了上述客户端-服务器代码。但是您可以轻松地将上述代码转换为在 Python2.7 上运行。您需要替换下面的代码行。

Python 2.7 使用以下 Python 输入函数。

下面列出了更多差异。

推荐阅读。

接下来,我们没有。Python 教程/测验/面试问题在这个博客上。如果您想尝试一下,请单击任何给定的链接。

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论