首页 > 编程问答 >以 \n 作为字节读取字节字符串

以 \n 作为字节读取字节字符串

时间:2024-08-07 15:45:27浏览次数:11  
标签:python

我有一个字节字符串,我想将其读入 python 中。该字符串是从 numpy float64 到字节的浮点转换。

问题是我的一些数据在转换时最终将换行符 '\n' 字符作为字节。

如何阻止 python 继续运行当遇到“\n”字符时很疯狂

这是我的数据

value: np.float64 = np.float64(0.05476599186658859)
bytes = value.tobytes()
print(bytes)

save_path = "c:/mydata.bin"
save_path.open("wb")
save_path.write(bytes)
save_path.clost()

结果

b'\x00\x00\x00\xc0I\n\xac?'

现在当我尝试打开时,我收到以下问题

data_path = Path("c:/mydata.bin")
with data_path.open("rb") as data_chunk:
    data = data_chunk.read(8) # 8 bytes so read first 8

    print(data)

结果

b'\x00\x00\x00\xc0I\n\

我最初使用的是readline () 但移至 read() 来尝试修复此问题,但它仍然不断裁剪最后一个字节


你的问题不是 Python 将 \n 当作特殊字符。问题在于,你是在将文件的 内容 打印到你的终端,而终端将 \n 解释为换行符。

你的文件实际上是正确地存储了所有 8 个字节的。你可以通过十六进制查看器来验证这一点,或者简单地在 Python 中打印出 len(data)

data_path = Path("c:/mydata.bin")
with data_path.open("rb") as data_chunk:
    data = data_chunk.read(8) # 8 bytes so read first 8

    print(len(data))  # 输出:8
    print(data)      # 输出:b'\x00\x00\x00\xc0I\n\xac?'

解释:

  • print(data) 调用 Python 的内置 str 函数来显示字节串。 str 函数将 \n 转换为实际的换行符。
  • 要查看字节串的原始字节表示,你可以使用 repr() 函数:
print(repr(data))  # 输出:b'\x00\x00\x00\xc0I\n\xac?'

总之,你的数据被正确地写入和读取。 \n 字符没有问题,它只是在终端中以换行符的形式显示。

标签:python
From: 78842393

相关文章

  • python+flask计算机毕业设计社区居民信息管理系统 (程序+开题+论文)
    本系统(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。系统程序文件列表开题报告内容研究背景随着城市化进程的加快,社区居民信息管理成为社区管理的重要组成部分。传统的社区管理方式存在信息更新不及时、管理效率低下等问题,难以满足......
  • Python安装教程(含MacOS&&Linux系统)
    Python安装教程Windows用户访问Python官网:WelcometoPython.org 打开下载好的安装包根据提示安装   Pip换源(系统级别)(注:Pip在3.4以上的版本才支持,3.4之前的版本可以在cmd中输入 easy_installpip 下载pip)1.为什么要换源?Python安装......
  • python
    字符串比较按位比较,有一位大,整体就大。函数多返回值正确:deftest_return():return1,2,3错误:return1return2函数的多种传参方式位置参数:关键字参数:函数调用时通过“键=值”的形式传递参数(传参顺序无所谓)eg:test(name="niu",age="19")缺省参数:举例说明:def......
  • 将普通 python 文件导入另一个文件时出现 AttributeError
    我是新手。我正在尝试将简单的python文件导入到我的主文件中。相同的代码在我的mac上工作,但在我的电脑上不起作用。我不断收到此错误消息。“AttributeError:模块‘logo’没有属性‘hammer_logo’”第一个文件拍卖.py代码importlogoprint(logo.hammer_logo)第......
  • 使用python读取mysql数据,并记录到本地的文件中
    上次写过一次读取sqlserver数据,写入本地文件。今天分享一下mysql的。原理相似,希望对大家有小小的帮忙PS,我是3.6.13版本python,上一版本用包mysql-connector,一直不成功,查询官方文档,发现这个版本的PYTHON简直是奇葩的存在了。基本所有版本都支持,就是几个小版本排除在外了。......
  • python合并音视频-通过moviepy模块合并音视频
    ......
  • esp32安装circuitpython
    安装Thonnyhttps://thonny.org/在Thonny中安装circuitpython在配置解释器中选择circuitython然后点击右下角“安装或更新...“variant这里我选择了DOITesp32DevelopmentBoard(试过其他的一些个,不知道为什么安装完之后会无限重启,所以最后选择了这个)烧录完之后,重新连接,Th......
  • 利用Python进行金融数据分析的全面指南【文末送书】
    文章目录Python金融数据分析技术文章Python金融数据分析【文末送书】Python金融数据分析技术文章金融数据分析在现代金融行业中扮演着至关重要的角色。通过使用Python编程语言,我们可以对大量金融数据进行处理、分析和可视化,从而获得有价值的洞察。本篇文章将介绍如何......
  • python和sliver交互
    开源第三方库:https://sliverpy.readthedocs.io/en/latest/getting-started.html#connect-example代码示例:importosimportasynciofromsliverimportSliverClientConfig,SliverClientCONFIG_PATH=os.path.join('../sliver/','moloch_127.0.0.1.cfg')......
  • 不写代码,这样使用Python seaborn、matplotlib
    今天分享一个PyQt5GUI工具,动动鼠标拖拽就使用Python的Matplotlib、Seaborn进行绘图,并导出高清PDF。sviewgui安装pip install sviewguisviewgui使用使用很简单,因为,他只有一个方法啊:buildGUI();下面以tips.csv数据和boxplot为例介绍sviewgui的使用。以下三种方法均可......