6.python中的网络编程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了6.python中的网络编程相关的知识,希望对你有一定的参考价值。
在python中支持多种地址家族
其中,常用的最早的伯克利套接字中是AF_UNIX,
Linux中的套接字是AF_NETLINK,
针对 Linux 的另一种特性(Python 2.6 中新增)就是支持透明的进程间通信(TIPC)协议。 TIPC 允许计算机集群之中的机器相互通信,而无须使用基于 IP 的寻址方式。 Python 对TIPC 的支持以 AF_TIPC 家族的方式呈现。
而最常用的基于网络的编程是基于家族名字 AF_INET,或者地址家族:因特网。另一个地址家族 AF_INET6 用于第 6 版因特网协议(IPv6)寻址 。
1.创建套接字
要创建套接字,必须使用 socket.socket()函数,它一般的语法如下。
socket(socket_family, socket_type, protocol=0)
其中,socket_family 是 AF_UNIX 或 AF_INET(如前所述),socket_type 是 SOCK_STREAM
或 SOCK_DGRAM(也如前所述)。 protocol 通常省略,默认为 0。
所以,为了创建 TCP/IP 套接字,可以用下面的方式调用 socket.socket()。
tcpSock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
同样,为了创建 UDP/IP 套接字,需要执行以下语句。
udpSock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
tips:使用from socketimport *,就可以直接写udpSock = socket(socket.AF_INET, socket.SOCK_DGRAM),不用每个函数名前都加上模块名socket了。
套接字内置的方法
一般来说,简单的标准流程为:
以上是关于6.python中的网络编程的主要内容,如果未能解决你的问题,请参考以下文章