首页 > 编程语言 >python: socket

python: socket

时间:2023-07-23 11:33:06浏览次数:32  
标签:tcpclient socket python TCP decode recvdata message

 

"""
网络发送信息

"""
import socket
import threading

def handlesend(tcpclient):
    """
    发送
    :return:
    """
    while True:
        message = input()
        tcpclient.send(message.encode())


def handlerecv(tcpclient):
    """
    接收
    :return:
    """
    recvdata = tcpclient.recv(1024)
    print(recvdata.decode())
    # 中文
    # print(recvdata.decode('gbk'))



def send():
    #TCP 客户端
    #1 创建TCP socket 对象
    # socket.AF_INET ip4
    # socket.SOCK_STREAM TCP 协议
    # socket.DGRAM upd 协议
    tcpclient=socket.socket(socket.AF_INET,socket.SOCK_STREAM)
    #2 链接TCP 服务端  ip地址, port 端口
    tcpclient.connect('172.16.1.106',6666)
    t1=threading.Thread(target=handlesend,args=(tcpclient,))
    t1.start()
    t2=threading.Thread(target=handlerecv,args=(tcpclient,))
    t2.start()

    '''
    #3 发送信息
    while True:
        message=input()
        tcpclient.send(message.encode())
        #中文
        #tcpclient.send(message.encode('gbk'))
        #4 接收信息 用多线程来解决卡顿
        recvdata=tcpclient.recv(1024)
        print(recvdata.decode())
        #中文
        #print(recvdata.decode('gbk'))
        
    '''
    #5 关闭 socket
    tcpclient.close()

  

标签:tcpclient,socket,python,TCP,decode,recvdata,message
From: https://www.cnblogs.com/geovindu/p/17574819.html

相关文章

  • python+playwright 学习-67 抓取 table 表格数据
    前言最近有小伙伴提到如何抓取table表格上的数据,table表格的数据很简单,就是行和列。可以按行抓取,也可以按列抓取。获取table某一列的数据抓取第3列(项目名称)所有数据定位方式$x('//table/tbody/tr/td[3]')于是可以看到当前页面的第3列数据被全部定位到接下来就可以......
  • python 输入n行字符串
    如何实现Python输入n行字符串流程概述下面是实现Python输入n行字符串的一般流程:步骤描述1获取用户输入的行数n2创建一个空列表lines来存储字符串3使用循环n次,每次获取用户输入的字符串,并将其添加到lines列表中4最终得到的lines列表包含了用户输入的n行字......
  • python 循环往两个占位符
    Python循环往两个占位符循环是编程中常用的一种控制结构,它允许我们重复执行一段代码,达到简化代码和提高效率的目的。Python是一种高级编程语言,提供了多种循环结构,其中包括通过占位符循环的方法。在本文中,我们将介绍如何使用Python中的循环来填充两个占位符。什么是占位符?在......
  • python 输出为npy文件
    如何将Python输出为npy文件作为一名经验丰富的开发者,我很高兴能够教会你如何将Python的输出保存为npy文件。在本文中,我将为你详细介绍整个流程,并提供每一步所需的代码以及注释其意义。1.导入所需的库在开始之前,我们需要导入numpy库,因为它提供了将数据保存为npy文件的功能。imp......
  • python 使用Queue需要引入哪个包
    Python中使用Queue需要引入哪个包在Python中,如果我们想要使用队列(Queue)数据结构,我们需要引入queue模块。queue模块提供了实现各种队列类型的类,包括FIFO(先进先出)队列、LIFO(后进先出)队列和优先级队列等。通过引入queue模块,我们可以很方便地在我们的代码中使用队列。引入队列模块首......
  • python 循环list
    Python循环列表解析在Python编程中,循环是一种重要的控制结构。循环使我们能够重复执行一段代码,以便在处理大量数据或需要重复操作时提高效率。Python提供了多种循环结构,其中最常用的是for和while循环。本文将重点介绍如何使用循环来处理列表数据。列表简介在了解如何循环列表之......
  • python 判断变量是否是bytes
    Python判断变量是否是bytes概述在Python中,判断变量是否是bytes类型可以通过一系列步骤来实现。本文将介绍这个过程,并提供相应的示例代码。步骤下面是判断变量是否是bytes类型的流程图:步骤描述步骤1检查变量是否是bytes类型步骤2如果是bytes类型,则变量是bytes......
  • python 实现队列
    Python实现队列引言在计算机科学中,队列是一种常见的数据结构,用于存储和管理元素。队列采用先进先出(FIFO)的原则,即最先进入队列的元素最先被处理。在Python中,可以使用列表和相关的操作来实现队列。本文将介绍如何使用Python实现队列,并提供详细的代码示例和解释。实现步骤下表展......
  • [oeasy]python0074[专业选修]字节序_byte_order_struct_pack_大端序_小端序
    进制转化回忆上次内容上次总结了计算字符串值的函数eval 四种进制的转化函数binoctinthex  函数名前缀目标字符串所用进制bin0b二进制oct0o八进制hex0x十六进......
  • python: emailhelper
     """python发送邮件,用授权码"""importsmtplibfromemail.mime.textimportMIMETextdefsend():"""发送邮件:return:"""try:stmpserver163='smtp.163.com'......