Chinaunix首页 | 论坛 | 博客
  • 博客访问: 98291
  • 博文数量: 45
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 368
  • 用 户 组: 普通用户
  • 注册时间: 2014-01-21 16:28
文章分类

全部博文(45)

文章存档

2014年(45)

我的朋友

分类: LINUX

2014-08-05 11:19:03

python编程_socket编程基础import socket,python提供的常用方法创建socket_绑定地址_设定监听队列_接收客户端连接_收发消息_关闭连接等  

2012-03-30 11:19:07|  分类: python开发|举报|字号 订阅

python socket编程,首先需要import   socket模块;

 

创建socket对象   即创建一个socket:

      sock = socket.socket(family,type);

      参数:  

             family   表示地址家族:     1、socket.AF_INET    通常指IP地址,  2、socket.AF_UNIX   通常指本地域套接字通信。

             type     套接字类型:          1、socket.SOCK_STREAM   流式套接字(TCP),    2、socket.SOCK_DGRAM   数据报套接字(UDP)

      比如:

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

 

将创建的socket对象,绑定到指定的地址(IP和port)         即绑定:

      sock.bind(address);

      参数:

            前面创建的socket使用AF_INET类型,这里的地址address是一个双元素元组。

            address的格式为(host,port),host为主机IP,port为端口。

      比如:

            sock.bind(("172.25.81.16",33306));

 

设置监听队列的大小:

      sock.listen(backlog);

      参数:

              backlog是用来设置连接队列的大小,最小值为1。

      比如:

             sock.listen(10);

 

接收客户端连接:

       connect,address = sock.accept();

       返回值:

               connect是和客户端建立的连接,后续通信就依靠它来完成,buf=connect.recv(len)或connect.send(buf)等。

               address是客户端的地址信息,格式为(host,port)。

 

接收和发送消息:

       接收:

       buf = connect.recv(len);

       返回值:  

                接收到的消息内容;

                接收长度len;

       例如:

                buf = connect.recv(1024);

      发送:

      buf="hello client";

      connect.send(buf);

 

 

链接到服务器:

     sock.connect(address);

     参数:

           address服务器端的地址,格式为(host,ip)。

      例如:

           sock.connect((172.25.81.16,33306));

 

 

关闭连接:

    sock.close();

阅读(821) | 评论(0) | 转发(0) |
0

上一篇:Python中*args 和**kwargs的用法

下一篇:没有了

给主人留下些什么吧!~~