首页 > 编程语言 >python3 \r和\n

python3 \r和\n

时间:2023-05-28 09:56:07浏览次数:48  
标签:nzzz 字符 abc 字节 123 print python3

1、说明

\n:换行符,跳到下一行

\r:回车,跳到当前行的首部,\r会占据一个字符长度

windows下enter是 \r\n; 
linux/unix下是\n; 
mac下是\r

网络协议的头部字段间隔也是\r\n

2、比较分析

print('abc123zzz')
print('abc\n123\rzzz\n1234\r', end='')
print('000')
"""
abc123zzz
abc
zzz
000
"""
  •  在windows+python环境中,向控制台输出。\n是普通的换行符,\r会将光标移动到当前行的行首。
  • 如果直接继续输出,会将该行的字符的所有输出字符清除,再进行输出,而不是简单的覆盖。
  • 如果是\r之后紧接着输出\n,则\r可以视为无效果
with open(file='a.txt', mode='w+', encoding='utf-8') as f:
    s = '123\rabc\neee\r\nzzz'
    print(s)
    f.write(s)
    f.seek(0)
    s = f.read()
    print(s, len(s), s.encode('utf-8'))
with open(file='a.txt', mode='rb') as f:
    print(f.read())
"""
abc
eee
zzz
123
abc
eee

zzz 16 b'123\nabc\neee\n\nzzz'
b'123\rabc\r\neee\r\r\nzzz'
"""
  • 在windows+python环境中,将\r和\n以字符写入文件,\r是直接写入,而\n会被转为\r\n两个字符
  • 按字符读取时,单个的\r会被转为\n,\r\n两个字符会被转为\n单个字符。
  • 按字节读取时,理解为直接读取所有字节
with open(file='a.txt', mode='wb+') as f:
    s = '123\rabc\neee\r\nzzz'
    print(s)
    f.write(s.encode('utf-8'))
with open(file='a.txt', mode='rb') as f:
    print(f.read())
"""
abc
eee
zzz
b'123\rabc\neee\r\nzzz'
"""
  • 在windows+python环境中,将\r和\n以字节写入文件,是直接写入

综合来说,如果是字符的读和字符的写,如果不包含\r完全不影响使用效果。而包含\r,无论是单个的还是\r\n,按字符写入再按字符读取,效果上来说\r都是被转为\n,即\n和\n\n。

python从windows中按字符是读取不到\r字符的。

字节的读和字节写,无论是否包含\r不影响字节内容。

标签:nzzz,字符,abc,字节,123,print,python3
From: https://www.cnblogs.com/wd404/p/17345172.html

相关文章

  • python3反射
    脚本语言系列之Python|Python反射-知乎(zhihu.com)1、基本使用hasattr(obj,name_str)判断输入的name_str字符串在对象obj中是否存在(属性或方法),存在返回True,否则返回False。getattr(obj,name_str)将按照输入的name_str字符串在对象obj中查找,如找到同名属性,则返回该......
  • python3多线程
    1、线程和进程计算机资源,指的是cpu计算资源、内存资源、接口读写资源等。进程:计算机中用于分配资源的最小个体。不同进程之间并不共享内存。线程:是进程内部的资源分配对象,一个进程最少会有一个线程。同一进程下的不同线程可以共享内存。2、并行和并发并行:同一时间段,交替前行。并......
  • python3函数
    1、介绍def函数名(参数列表):函数体在python中,可以直接在.py文件中,通过关键字def创建函数。2、函数与解释型python是解释型编程语言,从上到下解析,所以在调用函数时,该函数必须已经被声明。如果是在函数B声明之前,py文件中直接调用B,那么pycharm会提示异常如果是在函数B声明......
  • 编译安装python3.11.3
     1、下载源码包cd/usr/local/srcwget'https://www.python.org/ftp/python/3.11.3/Python-3.11.3.tar.xz' 2、解压xz-dPython-3.11.3.tar.xztarzfPython-3.11.3.tar 3、安装编译工具和依赖包yum-yinstallgcc-c++openssl-devel 4、配置mkdir-p/......
  • Ubuntu 安装 python3.9
    Ubuntu安装python3.9最简单方便的是apt使用第三方的ppa源,然后直接apt安装python3.9安装software-properties-common获取add-apt-repository命令:aptinstall-ysoftware-properties-common添加第三方的ppa源:add-apt-repositoryppa:deadsnakes/ppa,回车确认安装......
  • How to change the default Python2 to Python3 on Linux All In One
    HowtochangethedefaultPython2toPython3onLinuxAllInOneRaspberryPi在Linux中如何把默认的Python2更改为Python3solutions.bashrc/.zshrcalias$sudovim.bashrc$cat.bashrc$cat.bashrc|greppy#.bashrc配置一个alias✅#Python3=......
  • Python3源码编译和使用静态链接库lib&动态链接库dll详细介绍
    说明:本文主要介绍:1.python3源码的下载和编译内核工程(pythoncore)2.编译的lib和dll使用例子。若需要编译源码PCBuild下其他python工程,类似参考内核工程(pythoncore)编译的方式进行配置即可。一.python源码下载1.进入python官方网站:PythonSourceReleases|Python.org2.选择......
  • centos7安装Python3.9
      yumremovepython-3*先卸载所有之前装的python-3。yum-yinstallzlib-develbzip2-developenssl-develncurses-develsqlite-develreadline-develtk-develgccmakeyum-yinstallepel-releaseyum-yinstallpython-pipwgethttps://www.python.org/ftp/python/3.......
  • Centos7安装Python3.9
    1、 使用源码编译安装:您可以从Python官方网站下载Python3.9的源代码,并按照以下步骤进行编译和安装:安装编译所需的依赖项: sudoyuminstallgccopenssl-develbzip2-devellibffi-develzlib-develreadline-develsqlite-devel下载Python3.9的源代码包: wgethttp......
  • 音容笑貌,两臻佳妙,人工智能AI换脸(deepfake)技术复刻《卡萨布兰卡》名场面(Python3.1
    影史经典《卡萨布兰卡》是大家耳熟能详的传世名作,那一首壮怀激烈,激奋昂扬的马赛曲,应当是通片最为激动人心的经典桥段了,本次我们基于faceswap和so-vits库让AI川普复刻美国演员保罗·亨雷德高唱《马赛曲》的名场面。配置人脸替换DeepFakes项目关于人脸替换,业内鼎鼎有名的deepfakes......