[oeasy]python0040_换行与回车的不同_通用换行符_universal_newlines

换行回车

回忆上次内容

  • 区分概念
    • terminal终端
      • 主机网络中
        • 最终的 端点
    • TeleTYpewriter
      • 电传打印机
      • 终端硬件
    • shell
      • 终端硬件基础上的
        • 软件壳子
    • Console 控制台
      • 主机旁边 的 控制面板
  • 存储文件 的 时候
    • 我 在文件里 打了回车\n
    • 系统 将0x0a存入字节 进文件
    • 换行 自动就有 回车功能 了吗?🤔
  • 回忆一下
    • 被忽略的 \r

\r

  • \r 也是一个 ascii字符

    • \
      • 转义字符
    • \r
      • 转义序列
  • 什么是 转义 呢?

    • 转义转义 转化含义
    • 把原来 两个字符 : \r
    • 转化为 \r 这样一个字符
  • 没错!

    • \r1ascii字符

图片描述

  • 那么 \r 这一个字符
    • 对应字节 是多少 呢?

字节状态

  • \r 对应的字节是
    • 0x0d

图片描述

  • 这个0x0d
    • 好像 在安徒生童话中 出现过

安徒生童话

  • 文本观看 模式下
    • 自动 回车换行

图片描述

  • 字节观看 模式下
    • 0a
  • 0a前面是0d
    • 0a换行
      • (line-feed)
    • 0d回车
      • (carriage-return)

图片描述

  • 貌似
    • 总是 成对出现的
    • 为什么 呢?

换行 和 回车

  • 换行
    • 对应 字节0x0a
    • Line-Feed
      • 水平 不动
      • 垂直 向上喂纸
    • 所以是 feed

图片描述

  • 回车
    • 对应 字节0x0d
    • Carriage-Return
      • 垂直 不动
      • 水平 到纸张左侧
    • 可移动的打印头
      • 运输字符 的 装置 (Carriage)
      • 回到行首
    • 所以是 Return
  • 这是 个控制信号
    • 不过他俩 经常 联合使用

联合使用

  • CRLF 联合使用时
    • 会将 打印纸张 上移一行
    • 打字位置 将到 新行的最左侧
  • 也就是
    • 今天所理解 的 回车换行

图片描述

  • 电传打字机
    • 渐渐 退出了历史舞台
    • 当初的纸张 变成了 今天的显示器
    • 打字机的按键 也演变为 如今的键盘
  • 甚至 有了 操作系统
    • 操作系统 是 如何理解 回车换行 的呢?

操作系统 Unix

  • 受限于
    • 内存和软盘空间 的 不足
  • 设计者 决定采用
    • 个字符 来表示 换行回车
      • 使用 \n 替代 \r\n
      • 默认 \n = \r\n
    • 个字符干个事

图片描述

  • 类unix(unix-like) 都是如此
    • 包括 BSD、Linux

unix 和 c 的羁绊

  • C语言

    • 延续了 这个惯例
    • \n
      • 既干 \n的活(换行)
      • 又干 \r的活(回车)
  • 输出中有 \n 的话

图片描述

  • 如果只有\n
    • 本应是
      • 下图这样的

图片描述

  • 实际上是
    • 下图这样的

图片描述

  • 是 回车加换行 的
  • 那还有
    • 纯换行 不回车的效果 吗?

纯换行

  • 纯换行效果可以用\v

图片描述

  • \v 在ascii中的含义是VT
    • 垂直制表位

图片描述

  • 序号是 11

图片描述

Commodore64 和 mac

  • Commondore64
    • 一度 也曾 很流行
    • 同样出于 节省空间的目的
      • 使用 \r 代替 \r\n
      • 这 就有分歧
    • Commodore64 影响了 mac
  • mac
    • 早期 也是
      • 使用 \r 代替 \r\n
      • 甚至按键 都叫做 return
  • 后来 为了 和unix保持一致
    • \r 修改为 \n
      • 可能是因为Mac用户
        • 需要用 ssh 命令
          • 连接 unix-like的服务器
          • 换行不统一
          • 文件读取会出现错误
  • 流行的三大系统(类unix、mac、win)
    • 两个都是\n
  • 来来看看 微软的windows

微软

  • DOS系统 是兼容 CP/M 形成的
    • CP/M 使用 \r\n
  • 键盘上 印的名称是enter
    • 符号是
      • 先 LineFeed 再 Return
      • 也是\r\n
    • 对应字节是b"\x0d\x0a"
  • 后来 的 windows
    • 顺着 DOS的惯例

图片描述

  • 跨系统 浏览文档的时候
    • 会有时候 多行 变成 一行
    • 有的会出现 '0D', '^M' 之类的乱码
  • 不只是 windows记事本🗒️
    • 而且 微软office 等
    • 都曾有 这个困扰
  • win10 最新的记事本🗒️
    • 已经 优化

python 解释器的理解

  • 标准 输入输出流
    • python 的 字符输入
      • 靠的是 终端键盘
    • python 的 显示输出
      • 靠的是 终端屏幕
  • 具体字符
    • 显示\n的时候
      • 就会换行
      • LineFeed
    • 显示\r的时候
      • 就会退回到本行开头
      • CarriageReturn

图片描述

  • \n 写入文件的时候
    • 就会以 b"\x0a"的字节形式
      • 存储 在 文件 中
  • \r 写入文件的时候
    • 就会以 b"\x0d"的字节形式
      • 存储 在 文件 中
  • python3解释器 基于 操作系统
    • 操作系统 基于 cpu架构
  • 不管什么样的操作系统cpu 架构
    • 只要是 python解释器
    • 对于\n\r的解释方式 就是统一的
      • \n 换行
      • \r 退到行头
  • 这种统一 是跨平台的
    • 跨系统、跨cpu架构的

总结

  • 对于换行和回车
  • 不同层面的理解
    • 电传打字机
      • 两件事
      • 经常 一起干
      • 但也可以 分别干
    • 不同操作系统
      • unix-like
        • 带头简化 成 \n
        • 步调一致 就好
      • mac
        • 为了 避免麻烦
        • 我和 unix-like一致
      • windows
        • 原来 我用户多
        • 定什么规矩 我说了算
        • 惹了 很多问题
        • 现在 我还是 随大流 吧
    • python 解释器
      • unix-like 做得对
      • 不管 在什么系统、什么架构 上
      • 在我python上 是统一 的
  • 光说不练假把式
    • 我能看看电传打字机吗?🤔
  • 我们下次再看!👋蓝桥->https://www.lanqiao.cn/courses/3584
  • github->https://github.com/overmind1980/oeasy-python-tutorial
  • gitee->https://gitee.com/overmind1980/oeasypython
  • 视频->https://www.bilibili.com/video/BV1CU4y1Z7gQ 作者:oeasy

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/18312.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

在messagebox()里回车换行

messagebox("","1" char(13) "2") // char(13)即messagebox()里的回车,或者能用~r~n 一定要引号引起来 messagebox("","1" ~r~n "2")

HTML中识别[换行符/n]进行自动换行

通过css中white-space: pre-line;属性用来控制容器的文本中带有换行符等的显示。 pre-line&#xff1a;忽略文本中的空白符&#xff1b;当文本中存在 <br> 或文本中有换行符时&#xff0c;或者遇到框的宽度约束时&#xff0c;文本会自动换行。 例(使用换行符/n进行换行显…

notepad++替换回车换行符,如何操作?

notepad替换回车换行符,如何操作&#xff1f; 下面以,替换为换行符&#xff0c;举例说明 二个关键点&#xff1a; 1.替换为中输入\r\n 2.查找模式中选“扩展(x)(\n,\r...)” 如下图所示&#xff1a; 替换后的效果为&#xff1a; 如果不会操作&#xff0c;欢迎留言。

回车符、换行符和回车换行符

我的CSDN主页My Python 学习个人备忘录我的HOT博 自学并不是什么神秘的东西&#xff0c;一个人一辈子自学的时间总是比在学校学习的时间长&#xff0c;没有老师的时候总是比有老师的时候多。             ——华罗庚 \r 、\n 和 \r\n 题目代码运行效果我的解题思路…

字符串的显示及回车换行

字符串的显示及回车换行 一.实验目的 a)熟悉、掌握汇编语言的框架 b)实现字符串的显示与回车换行 二、实验重难点 a)重点:需要运用 mov 指令实现数据的传送&#xff0c;操作结束须退出指 令退出操作。1.mov 指令格式: Mov dest&#xff0c;src ;dest为目的操作数&#xff0…

回车与换行在notepad中的应用

在notepad中打开显示所有字符来看到隐藏的回车和换行符 可以看到在windows中回车换行为CRLF 缩写英文含义ASCⅡ转义系统ASCⅡ值CRcarriage return回车\rMacIntosh&#xff08;早期的Mac&#xff09;13LFlinefeed换行\nUnix/Linux/Mac OS X10CRLFCarriage Return & Linefe…

textarea回车换行的方法

法一&#xff1a; textarea 多行回车换行&#xff0c;显示的时候换行设置&#xff1a; 在使用textarea标签输入多行文本的时候&#xff0c;如果没有对多行文本显示处理&#xff0c;会导致没有换行的情况 Css 属性:white-space white-space 属性用于设置如何处理元素内的空白&a…

如何构建自己的AI助理

目录 引语&#xff1a; Serverless 和数据湖 AIGC 业务的场景和需求痛点 腾讯云存储 AIGC 解决方案 加速数据训练过程 全方位审核推理过程 管理推理结果 结语&#xff1a; 引语&#xff1a; 大家好我们是权知星球&#xff0c;开启你独特的知识星际之旅 AIGC在过去一年…

超越YOLOv5,0.7M超轻量,又好又快

深度学习Tricks&#xff0c;第一时间送达 目标检测作为计算机视觉领域的研究热点之一&#xff0c;不仅可以独立完成车辆、商品、缺陷检测等任务&#xff0c;也是人脸识别、视频分析、以图搜图等复合技术的核心模块&#xff0c;在自动驾驶、工业视觉、安防交通等领域的应用价值…

如何用 Elasticsearch 实现“图搜图”

1、什么是图搜图&#xff1f; "图搜图"指的是通过图像搜索的一种方法&#xff0c;用户可以通过上传一张图片&#xff0c;搜索引擎会返回类似或者相关的图片结果。这种搜索方式不需要用户输入文字&#xff0c;而是通过比较图片的视觉信息来找到相似或相关的图片。这项…

RISC-V架构下 DSA - AI算力的更多可能性

责编 | 王子彧 出品 |进迭时空SpacemiT AI 应用出现在我们日常的生产生活当中&#xff0c;赋能各行各业的劲头势不可挡。近些年&#xff0c;AI 算力芯片领域群雄逐鹿&#xff0c;通过对芯片、算力与 AI 三者发展迭代过程的理解&#xff0c;我们发现高能效比的算力、通用的软件栈…

解忧杂货铺(五):用了无法离开的网站资源

目录 1、概述 2、网站列表 2.1 油猴 2.2、在线文档转换 2.3、电子书搜索 2.4、学吧导航 2.5、茶杯狐看片 2.6、极简插件 2.7、图片风格更改 2.8、千帆搜索 2.9、俄罗斯以图搜图 2.10、在线图片处理工具 2.11、英语在线真题 2.12、快搜 2.13、菜鸟教程 2.14、导航…

Java使用Opencv进行大图找小图并使用其找图功能进行bilibili视频下载案例

Java使用Opencv进行大图找小图并使用其找图功能进行bilibili视频下载案例 一、Opencv大图找小图说明二、Opencv的window安装1.下载windows下的安装包2.安装3.Java中Opencv加载测试 三、Java中通过Opencv进行模板匹配大图找小图四、进行多图查找五&#xff1a;案例下载bilibili视…

利用OpenCV的函数matchTemplate()实现在图像中寻找、检索、搜索模板图像【图像模板匹配】

利用OpenCV的函数matchTemplate()实现在图像中寻找、检索、搜索模板图像【图像模板匹配】 在博文 https://www.hhai.cc/thread-220-1-1.html 中我们利用直方图的反向投影原理可以寻找图像中具有某个直方图特征的部分。 但是有时候会遇到这样的情况&#xff1a;图像中某个部分的…

chatgpt赋能python:Python以图搜图:如何用Python优化SEO?

Python以图搜图&#xff1a;如何用Python优化SEO&#xff1f; 随着搜索引擎算法的普及&#xff0c;优化您的SEO策略需要更多的创意和技巧。一种方法是使用Python以图搜图&#xff0c;具有该技能可以使您的网站上升到搜索结果列表的顶部。在这篇文章中&#xff0c;我们将探讨Py…

使用Milvus搭建以图搜图服务

使用Milvus搭建以图搜图服务 介绍安装MilvusJava调用Milvus插入、查询引入Maven依赖创建Milvus客户端实现Milvus插入向量数据实现Milvus 查询向量 结尾 介绍 网上相关的实现比较少&#xff0c;最多也只能查到Milvus&#xff0c;但不知道怎么使用。最后通过ChatGPT了解到了相关…

chatgpt赋能python:Python在SEO中的应用之以图找图

Python在SEO中的应用之以图找图 在SEO优化中&#xff0c;一个重要的环节是优化图片&#xff0c;而通过利用Python编写的代码&#xff0c;可以实现以图搜图&#xff0c;简化了图片优化的流程和提高了优化效率。 什么是以图找图 以图搜图&#xff0c;即通过一张已知图片搜索出…

自研芯片架构 ,这家中国公司发布DPU芯片计划

近日,专注于智能计算领域的DPU芯片和解决方案公司中科驭数发布了其下一代DPU芯片计划&#xff0c;将基于自研的KPU&#xff08;Kernel Processing Unit&#xff09;芯片架构&#xff0c;围绕网络协议处理、数据库和大数据处理加速、存储运算、安全加密运算等核心功能&#xff0…

十大芯片公司盘点,转行怎么选择芯片设计公司?

不少同学想要入行IC&#xff0c;想要了解IC行业哪些公司比较有前景&#xff1f;芯片设计公司哪家强&#xff1f;下面IC修真院就来为大家盘点一下&#xff01; 中国十大芯片企业排名 1.海思Hisilicon 2.Spreadtrum展讯 3.龙芯loongson 4.兆易创新GigaDevice 5.汇顶GOODIX 6.华大…

全球爆火的ChatGPT,能否推动芯片市场增长?

“我所热爱的是我真实的生活&#xff0c;因为它包含了我所有的经历和感受&#xff0c;是我每一天都在体验和思考的。”这句非常有诗意的话&#xff0c;来自最近爆火的ChatGPT。 ChatGPT作为一款智能机器人&#xff0c;上知天文下知地理&#xff0c;不仅能写文案&#xff0c;还…