对于有经验的开发人员来说,掌握的编程语言应该是不少的。在这些编程语言中,网络编程的应用时必不可少的。其中Python也是这样的编程语言。我们今天将会在这里为大家详细介绍一下Python Socket编程再网络编程中的应用。

Socket:套接字

套接字好比电话的插口,主机和端口就好比区号和电话号码,主机:是你要连接到哪里,端口:是从那个口子连过去,和大多数语言一样,Python 支持面向连接和无连接。

面向连接即需要先连接然后通讯, 面向连接主要协议就是传输控制协议(tcp),要创建tcp套接字时需要指定套接字类型为 SOCK_STRAM,表达了他作为流套接字的特点。

无连接,顾名思义无需建立连接就可以进行通讯,这时数据到达顺序、可靠性就无法保证了。实现这种连接的协议就是用户数据包协议(udp)。创建UDP时需要指定套接字类型为 SOCK_DGRAM。

创建 Socket:

创建Python Socket编程用到 Socket模块函数,语法为:

Socket(Socket_family,Socket_type,protocol=0)

Socket_family不是 AF_VNIX 就是 AF_INET,通常使用的是AF_INET(不明白可以去查些资料),Socket_type可以是 SOCK_STREAM 或者 SOCK_DGRAM,protocol一般不填,就默认为0

创建一个TCP/IP的套接字:

tcpSock=Socket(Socket.AF_INET,Socket.SOCK_STRAM)

创建一个UDP/IP的套接字:

udpSock=Socket(Socket.AF_INET,Socket.SOCK_DGRAM)

创建好套接字以后,我们需要使用套接字的内建方法,常用的方法:

服务器端

s.bind() 绑定地址(主机,端口)到套接字

s.listen() 开始监听

s.accept() 被动接受 tcp客户端连接(阻塞式),等待连接的到来

客户端

s.connet() 主动初始化tcp服务器连接

s.connet_ex() connet扩展版本,出错时返回错误代码,不抛出异常

s.recv() 接受tcp数据

s.send() 发送数据

s.close() 关闭套接字

常用的Python Socket编程方法如上,还有一些方法大家可以查询些资料。

【责任编辑:曹凯 TEL:(010)68476606】

点赞 0

python socket编程_Python Socket编程实现网络编程相关推荐

  1. 多线程 python tcp 图片_Python第四周之网络编程TCP (服务器/客户端; 线程下载图片;线程版服务器和客户端(单人、多人)) UDP...

    # 网络编程 # 计算机网络, 把多台独立自主的计算机,连接到网络,实现资源的共享 # Internet网,(互联网)eniac 1946美国大学第一台电子计算机 # # 一个TCP报文除了包含要传输 ...

  2. python网络编程(1):客户端与网络编程简介

    python网络编程(1):客户端与网络编程简介 很多情况下,网络编程就是选择并使用一个已经支持所需网络操作的库的过程. 1.使用pygeocoder实现地址和经纬度的转换 通过pipenv创建虚拟环 ...

  3. java网络编程与分布式计算_Java_net Java网络编程与分布式计算 - 下载 - 搜珍网

    Java网络编程与分布式计算/ch11/ActivatableLightBulbServer.java Java网络编程与分布式计算/ch11/active.policy Java网络编程与分布式计算 ...

  4. 高等学校计算机科学与技术教材:tcp/ip网络编程技术基础,TCP/IP网络编程技术基础...

    TCP/IP网络编程技术基础 语音 编辑 锁定 讨论 上传视频 <TCP/IP网络编程技术基础>是2012年北京交通大学出版社出版的图书,作者是王雷. 书    名 TCP/IP网络编程技 ...

  5. python的基础网络编程是下列_Python入门基础之网络编程、socket编程、TCP、UDP编程...

    忙了两天,继续更文!希望多多支持. 套接字 套接字是一种具有之前所说的"通讯端点"概念的计算机网络数据结构.网络化的应用程序在开始任何通讯之前都必需要创建套接字. 套接字有三种: ...

  6. python 在线编程 实现_Python进阶开发之网络编程,socket实现在线聊天机器人

    系列文章 本文目录 .什么是socket? 说到网络编程,难免要提到socket? 那什么是socket呢,中文名叫"套接字",更难理解了吧. 通俗来讲,socket表示一个网络连 ...

  7. python的socket编程_Python Socket编程详细介绍

    在使用Python做socket编程时,由于需要使用阻塞(默认)的方式来读取数据流,此时对于数据的结束每次都需要自己处理,太麻烦.并且网上也没找到太好的封装,所以就自己写了个简单的封装. 封装思路 1 ...

  8. socket recv 服务端阻塞 python_网络编程(基于socket编程)

    网络编程(基于socket编程) socket套接字:应用程序通常通过socket"套接字"向网络发送请求或应答网络请求,是主机间或同一计算机中的进程间相互通讯 socket是介于 ...

  9. python网络编程知识_python六十七课——网络编程(基础知识了解)

    网络编程: 什么是网络编程? 网络:它是一种隐形的媒介:可以将多台计算机使用(将它们连接到一起) 网络编程:将多台计算机之间可以相互通信了(做数据交互) 一旦涉及到网络编程,划分为两个方向存在,一方我 ...

最新文章

  1. python pptp链接_渗透技巧——PPTP口令的获取与爆破
  2. harbor安装_Harbor镜像仓库搭建
  3. 25个你可能不知道的Linux真相
  4. DES对称加密(2)三重DES
  5. IPsec-×××基本技术挖掘
  6. C# 使用 Lotus notes 公共邮箱发送邮件
  7. 网游类似魔兽世界的服务器维护都是在干嘛?
  8. ABB机器人与PC计算机控制口连接 超级终端 命令清单
  9. (四)将容器部署到Azure上的Kubernetes
  10. 雷林鹏分享:MySQL ALTER命令
  11. 售价17999元起,华为Mate X2发布;程序员10万“买”了个北京户口;赏金猎人获苹果5000美元奖励 | 极客头条...
  12. 百度运维部电子竞技大赛!
  13. 优动漫PAINT下载的素材找不到怎么办?
  14. Xcode 4.3.2 gives error “cannot use super because it is a root class”
  15. 思考一道题:非相邻数最大和
  16. 那些年,磕磕碰碰的BUG
  17. Java思想进阶之设计模式解析前篇(七大原则)
  18. relative absolute实例讲解
  19. 0x0000000000指令引用的0x00000000内存。该内存不能为read
  20. [转]四大开源商业智能平台大比拼[http://database.ctocio.com.cn/analysis/289/7610289.shtml]

热门文章

  1. server2012 图文安装流程
  2. linux yum lamp环境,linux centos yum安装LAMP环境
  3. excel函数去重_将数字去重,然后按从小到大的顺序连接起来!
  4. java与sql用windows身份连接,使用Windows身份验证将我的Sql Server 2008数据库连接到我的Java项目...
  5. 局域网访问php forbidden,PHP访问时Forbidden403错误
  6. php5.3 with-mysql centos_Centos编译搭建php7让php5.3和php7兼容共存教程
  7. 联通突然从4g变成3g了_中国联通最快明年底2G全面退网 并推进3G逐步退网
  8. print输出 pytorch_pytorch 实现打印模型的参数值
  9. python猜数游戏流程_Python 猜数字游戏
  10. gitlub统计一个人提交代码行数