'rb'模式允许您从Python中的文件读取原始二进制数据:with open(filename, 'rb') as file:

raw_binary_data = file.read()

type(raw_binary_data) == bytes。bytes是Python中不可变的字节序列。

不要混淆字节及其文本表示:print(raw_binary_data)将向您显示数据的文本表示,例如,可以表示为

的字节127(以10为基数:十进制)

bin(127) == '0b1111111'(基2:二进制)或作为hex(127) == '0x7f'(基16:十六进制)显示为b'\x7f'(打印七个ascii字符)。可打印的ascii范围中的字节表示为相应的ascii字符,例如,b'\x41'显示为b'A'(65 == 0x41 == 0b1000001)。

0x7f字节不作为七个ascii二进制数字存储在磁盘上,1111111,它不作为两个ascii十六进制数字存储:7F,它不作为三个文字十进制数字存储127。b'\x7f'是可用于在Python源代码中指定它的字节的文本表示(在磁盘上也找不到文本7个ascii字符b'\x7f')。

此代码将单个字节写入磁盘:with open('output.bin', 'wb') as file:

file.write(b'\x7f')Some kind of characters must be used to represent the bytes, what are they?

操作系统接口(访问磁盘等硬件的方式)是按字节定义的,例如POSIX read(2)也就是说,字节是这里的基本单位:您可以直接读/写字节——不需要任何中间表示。观看Richard Feynman. Why.

您可以在Python中直接调用os.read(),但不需要它;file.read()为您这样做(Python 3文件对象直接在POSIX接口上实现)。Python 2 I/O使用C stdio库,后者反过来使用OS接口来实现其功能)。As you point out, it's up to the OS drivers and hardware to establish how bytes are written, but the Python interpreter would then be able to read them. So it's reading something - what is that? It's not reading magnetic orientation of particles on the disk, is it? It's reading something symbolic, and I want access to it.

它在读取字节。硬盘是一台小型计算机,因此interesting things可能会发生,但它不会一直改变字节数(就“符号”或软件而言)。

b是python文件二进制打开_如何在Python中打开和显示原始二进制数据?相关推荐

  1. ubuntu 如何关闭离线模式_如何在macOS中打开或关闭Mac暗黑模式

    苹果在macOS Mojave中为Mac引入了暗模式.暗模式是系统级别的设置,可与Mac随附的所有应用一起使用.第三方应用也可以选择使用暗黑模式.暗黑模式使您更轻松地专注于工作,并且对眼睛也很容易.装 ...

  2. iptables 打开端口_如何在iptables中打开端口?

    iptables 打开端口 How to open a port, say 3389, in iptables to allow incoming traffics to it? 如何在iptable ...

  3. xshell 打开文件跳转到最后_如何在Xshell中打开Xftp

    Xftp作为远程文件传输软件,与Xshell终端模拟器同属于Xmanager,这两款软件经常配合使用,用来给远程服务器上传文件非常方便.那么在使用Xshell的时候怎样打开Xftp呢?下面就来给大家介 ...

  4. java如何解压rar文件怎么打开_如何在java中实现对zip和rar文件的解压

    如何在java中实现对zip和rar文件的解压 关注:101  答案:1  mip版 解决时间 2021-01-26 10:50 提问者芣①樣哋羙莮 2021-01-25 22:44 如何在java中 ...

  5. python升级版本命令_如何在python中安装和配置kivy库

    kivy是python的UI开发工具包,主要关注用户界面显示效果,可以在Android.IOS.Linux.OS X和Windows上运行.如果python开发中使用kivy,需要安装和配置相关文件和 ...

  6. python隐藏启动台_如何在Python中启动后台进程?

    如何在Python中启动后台进程? 我正在尝试将shell脚本移植到更易读的python版本. 原始shell脚本在后台使用"&"启动多个进程(实用程序,监视器等). 如何 ...

  7. python 运行r语言_如何在R中运行Python

    python 运行r语言 尽管我很喜欢R,但很显然Python还是一种很棒的语言-既适用于数据科学又适用于通用计算. R用户想要在Python中做一些事情可能有充分的理由. 也许这是一个很棒的库,还没 ...

  8. linux中文件重命名_如何在Linux中重命名文件?

    linux中文件重命名 This tutorial will walk you through the simple steps to rename a file in Linux. 本教程将引导您完 ...

  9. python静态变量计数器_如何在Python中使用静态变量在计数

    今天,在用Python写一个统计一个文件下有多少文件的小标本时,遇到了一个很棘手的问题.如何在Python中使用静态变量来计数.然后,就在网上一通查找,找的方法都是利用类的方法来实现静态变量.说实话没 ...

最新文章

  1. 2345浏览器网址_2345网址导航回应“浏览器主页劫持”丨开发者日报
  2. Mysql 5.7 liunx 忘记密码的补救方法
  3. HDFS的工作机制,HDFS写数据流程,HDFS读数据流程(来自学习资料)
  4. 查看文件大小du -sh ./ ll -h
  5. sqlserver varchar 对于 sum 运算符无效_在sqlserver上实现自定义函数四舍六入五成双...
  6. android servlet乱码问题,初识 JSP---(Servlet映射 / ServletRequest / get与post区别 / 解决乱码)...
  7. mac OS X 10.9.2 gdb codesign
  8. 教务管理系统C++实现
  9. Python的学习必备基础知识总结
  10. wxwindows编译
  11. 安卓默认下载工具_安卓 | 希音音乐 一款炒鸡好用的无损音乐下载器
  12. E8.Net工作流开发架构
  13. 分享最近发现的几个实用 chrome/edge 扩展和油猴脚本
  14. 纳税人信息与服务器信息不一致,没有申报清册信息怎么办
  15. 苹果cms是什么东西?
  16. 深度学习辅助决策医疗器械软件审评要点及相关说明
  17. 运维管理:极简运维系统设计
  18. 中职计算机数据库教学总结,中职计算机专业的数据库课程教学
  19. 斜渐近线b为0为什么不存在_向量的奇技淫巧——斜坐标系
  20. 修改Chromium源码实现HEVC/H.265 4K视频播放

热门文章

  1. virtualbox+vagrant学习-2(command cli)-16-vagrant snapshot命令
  2. android中volley通信框架简介
  3. 用UltraISO制作U盘启动盘,支持windows 7
  4. 主动,是因为在乎,不再联系,是因为感到自己多余
  5. CCS下DSP仿真实现双边带调制与频谱分析(查表法)
  6. Spark的RDD序列化
  7. python绘图添加上下标
  8. Vue之@click、事件修饰符@click.stop与@click.prevent、按键修饰符@keyup.enter
  9. APIO2019解题报告
  10. 定时将应用日志移动到指定目录