zoukankan      html  css  js  c++  java
  • python实战第一天-socket模块练习

    操作系统
     
    Ubuntu 15.10
     
    IDE & editor
     
    JetBrains PyCharm 5.0.2
     
    ipython3
     
    Python版本
     
    python-3.4.3
    

    导入socket模块 

    ####server####
    import socket s = socket.socket () s.bind(('127.0.0.1',30021)) 绑定在127.0.0.1:30021上 s.listen(10) #监听 0是不启用的

    查看端口

    netstat -ntl
    
    激活Internet连接 (仅服务器)
    Proto Recv-Q Send-Q Local Address           Foreign Address         State      
    tcp        0      0 127.0.0.1:30021         0.0.0.0:*               LISTEN     
    

    #阻塞的方式接收客户端 为了能够与客户端通信所创建的套接字文件,以及客户端地址

    sc,client = s.accept() #这时进程是等待连接状态的
    

    ####client####

    import socket
    
    c = socket.socket()
    
    c.connect(('127.0.0.1',30021))         #客户端连接后server进程退出连接状态
    

    #####server####在server执行可以查看连接状态

    print(sc)
    
    	<socket.socket fd=9, family=AddressFamily.AF_INET, type=SocketKind.SOCK_STREAM, proto=0, laddr=('127.0.0.1', 30021), raddr=('127.0.0.1', 36332)>
    
    print(client)
    ('127.0.0.1', 49612) #客户端连接端口49612 是随机的
    

    查看连接

    netstat -tan
    激活Internet连接 (服务器和已建立连接的)
    tcp        0      0 127.0.0.1:30022         127.0.0.1:49612         ESTABLISHED
    tcp        0      0 127.0.0.1:49612         127.0.0.1:30022         ESTABLISHED
    

    #####server#####

    data=sc.recv(1024)
    

    #####client#####

    c.send(b"form client")

    #####server#####

    print(data)  
    b'form client'

    关闭连接

    s.close()
    c.close()
    
  • 相关阅读:
    [2019.2.24]BZOJ4591 [Shoi2015]超能粒子炮·改
    [2019.2.13]BZOJ4318 OSU!
    [2019.1.17]BZOJ1066 [SCOI2007]蜥蜴
    [2019.1.15]BZOJ2152 聪聪可可
    [2019.1.17]BZOJ3993 [SDOI2015]星际战争
    [2019.1.14]BZOJ2005 [Noi2010]能量采集
    [2019.1.10]BZOJ1853 [Scoi2010]幸运数字
    [2019.1.9]BZOJ2299 [HAOI2011]向量
    yyb博客的几道神仙题
    CQOI2018异或序列 [莫队]
  • 原文地址:https://www.cnblogs.com/love19791125/p/5217090.html
Copyright © 2011-2022 走看看