python实现网络通信_基于python的tcp socket通信

基于python的tcp socket通信by Netfairy - 2015-08-10

0x00 前言

Python的设计哲学是“优雅”、“明确”、“简单”,的确,用python写程序真的是一种享受。想当时我用c语言写了一个tcp socket通信程序http://www.netfairy.net/?post=5真的要崩溃了,今天我用python来实现同样的功能,对比了一下,python写代码非常少,即使没学过python也能很轻松看懂。

0x01 开始python之旅

服务端

要用socket通信,我们首先要导入socket这个模块

import socket

然后设置连接的一些信息,我们是我们是基于TCP的通信,所以

sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

然后将sock与服务端的IP和端口绑定

sock.bind(("127.0.0.1",8888))

到这里一切准备就绪,开始监听

sock.listen(8)

8表示最大连接数量。服务端的代码就完成了,总共5行,如果用C语言写的话大概20行左右。。。

客户端

客户端更加简单了,首先导入socket模块

import socket

然后设置sock的一些信息

sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)

现在就可以连接服务器了

sock.connect(("127.0.0.1",8888))

总共三行代码,连接成功后,双方就可通信了。

开始通信

开始通信前,服务器首先接受客户端的连接

csock,caddr=sock.accept()

csock以后就用来和客户端通信,caddr是它的地址信息。比如服务器给客户端发信息:

csock.send("hello client!!!")

客户端接受发来的信息

sock.recv(1024)

这样就完成了一次通信。。。

0x02 后记

可以看到,用python写socket通信程序是非常简便的,不单如此,其他的如文件操作也是,python就是为便捷而生,enjoy it !!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值