将输入转换为字符串

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将输入转换为字符串相关的知识,希望对你有一定的参考价值。

我正在使用https://github.com/cmcqueen/cobs-python中提供的lib来确保我可以通过串行线发送数据。但是,这个lib需要一个字符串作为输入,它可以是任何东西(文本文件,图像等......)。由于我使用的串行线路没有任何特殊功能,因此无需担心触发某些事件的特殊字符。

如果可以的话,我会以原始模式发送图像,因为数据如何传递到另一端并不重要,但我需要使用此lib对其进行编码。

我尝试过以下方法:

data = open('img.jpg', 'wb')
cobs_packet = cobs.encode(''.join(data).encode('utf-8'))

这给了我以下错误:

>>> UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 0: ordinal not in range(128)

问题是,如果我使用不同的编码类型,数据长度会发生变化,而这种情况不会发生在我正在尝试的事情上。

有没有办法简单地将输入转换为字符串原样?

编辑:我正在使用python版本2.7

答案

我没有测试它有多远,但我找到了一个似乎有效的简单解决方案。通过使用bytes()函数,它以某种方式工作为字符串。我可以像这样将它传递给有问题的lib。

感谢大家的帮助。干杯。

以上是关于将输入转换为字符串的主要内容,如果未能解决你的问题,请参考以下文章

HTTP转换为null什么意思?

10个JavaScript代码片段,使你更加容易前端开发。

10个JavaScript代码片段,使你更加容易前端开发。

HTML Bookmarklet模板:将任何JavaScript代码片段转换为Bookmarklet

片段(Java) | 机试题+算法思路+考点+代码解析 2023

如何将变量转换为数组