栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Python套接字错误TypeError:需要一个类似字节的对象,而不是带有send函数的'str'

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python套接字错误TypeError:需要一个类似字节的对象,而不是带有send函数的'str'

发生此错误的原因是,在Python 3中,字符串是Unipre,但是在网络上传输时,数据需要改为字节。所以…一些建议:

  1. 建议使用
    c.sendall()
    而不是,
    c.send()
    以防止可能没有通过一个呼叫发送整个msg的问题(请参阅docs)。
  2. 对于文字,添加
    'b'
    for字节字符串:
    c.sendall(b'Thank you for connecting')
  3. 对于变量,您需要将Unipre字符串编码为字节字符串(请参见下文)

最佳解决方案(应同时使用2.x和3.x):

output = 'Thank you for connecting'c.sendall(output.enpre('utf-8'))

结束语/背景知识 :这在Python 2中不是问题,因为字符串已经是字节字符串了-
您的OP代码将在该环境中完美运行。Unipre字符串已在1.6和2.0版本中添加到Python中,但在它们成为默认字符串类型之前一直落后到3.0。也看到这个类似的问题,以及这一个。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/662382.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号