socket套接字(对话)

昨天学了socket函数,发送信息,接受信息,觉得还挺有意思的,就赶快来跟大家来分享一下啦。

首先要创建两个py文件,一个作为服务端,一个作为客户端。

服务端py文件

from scoket  import   *    #从scoket模块中导入所有的方法
s=scoket(AF_INET,SOCK_STREAM,0)#创建服务器套接字
s.bind(('',8080))#套接字与地址绑定,ip和端口号
s.listen(10)#监听连接十秒
while  True:#服务器无限循环
	csock,caddr=s.accept()#接受客户端连接
	print(caddr,'连接进来了')
	data=csock.recv(1024)#对话接受
	print(data)

创建服务器套接字中有几个参数,给大家解释一下。

s=socket(AF_INET,SOCK_STREAM,0)
socket(socket_family, socket_type, protocol=0)

第一个参数是:socket_family 套接家族。UNIX套接字的家族名字叫做“AF_UNIX”(又名AF_LOCAL)。包括python在内的大多数受欢迎的平台都使用属于地址家族及其缩写AF;其他比较旧的体系可能会将地址家族表示成域或协议家族,并使用其缩写PF而非AF。类似的,AF_LOCAL将代替AF_UNIX。 然而,考虑到向后兼容性。很多系统都同时使用两者,只是对同一个常数使用不同的别名。python本身仍然在使用AF_UNIX。sock_family是AF_UNIX或者AF_INET

第二个参数是:socket_type套接字类型。
为了创建UDP套接字,必须使用SOCK_DGRAM作为套接字类型(名字来源于datagrame<数据报>),因为这些套接字也使用因特网协议来寻找网络中的主机。所以这个系统也有一个更加普通的名字,即这两种协议(UDP和IP的组合名字,或UDP/IP)
socket_type是SOCK_STREAM或者SOCK_DGRAM

第三个参数是:protocol protocol 通常省略,默认为 0

客户端py文件

from socket import *
s=socket(AF_INET,SOCK_STREAM,0)
s.connect(('127.0.0.1',8080))
s.send(b'hello')
s.close()

注意:运行的时候一定要先运行服务器端的文件再运行客户端的py文件

刚开始的时候运行

服务端文件
在这里插入图片描述客户端文件
在这里插入图片描述运行完之后再打开服务端的界面
在这里插入图片描述连接进来了。(/≧▽≦)/(/≧▽≦)/。一定更要注意运行顺序哦!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值