python 中 \n 和转义r的作用和\r的实际应用
我们先看看这张转义字符图:

1. 知识储备
\r 表示将光标的位置回退到本行的开头位置
\b 表示将光标的位置回退一位
在 python 语言中, 使用 print 打印输出时,默认是会进行换行的。如何让其不换行呢?
- 在
python 2.x中的语法是在print语句的末尾添加逗号,例如print x,;或者使用sys.stdout.write()对标准输出进行重定向,如此文所示 https://segmentfault.com/q/1010000002810865 。 - 在
python 3.x中,print成为了一个独立的函数,有一个end参数,可以指定输出的结束符,默认是\n。
2. 在命令行中实现倒计时功能
# __author__ = "Gao Zhengjie"
# __date__ = "2018/1/5"
# __Desc__ = 在一行中不断刷新倒计时 import time count_down = 10 # 设置倒计时时间,单位:秒
for i in range(count_down, 0, -1):
msg = u"\r系统将在 " + str(i) + "秒 内自动退出"
print(msg, end="")
time.sleep(1)
end_msg = "结束" + " "*(len(msg)-len("结束")) # 如果单纯只用“结束”二字,无法完全覆盖之前的内容
print(u"\r"+end_msg)
3. 在命令行中实现“转圈”功能
# __author__ = "Gao Zhengjie"
# __date__ = "2018/1/5"
# __Desc__ = 在一行中不断刷新转圈 import time count_down = 10 # 设置倒计时时间,单位:秒
interval = 0.25 # 设置屏幕刷新的间隔时间,单位:秒
for i in range(0, int(count_down/interval)):
ch_list = ["\\", "|", "/", "-"]
index = i % 4
msg = "\r程序运行中 " + ch_list[index]
print(msg, end="")
time.sleep(interval)
print(u"\r结束" + " "*len(msg))
4. 在命令行中实现进度条功能
# __author__ = "Gao Zhengjie"
# __date__ = "2018/1/5"
# __Desc__ = 在命令行中实现进度条功能 import time count_down = 10 # 设置倒计时时间,单位:秒
interval = 1 # 设置屏幕刷新的间隔时间,单位:秒
for i in range(0, int(count_down/interval)+1):
print("\r"+"▇"*i+" "+str(i*10)+"%", end="")
time.sleep(interval)
print("\n加载完毕")
链接:https://www.jianshu.com/p/eb5c23cd6e34
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。
python 中 \n 和转义r的作用和\r的实际应用的更多相关文章
- 如何理解python中的if __name__=='main'的作用
一. 一个浅显易懂的比喻 我们在学习python编程时,不可避免的会遇到if __name__=='main'这样的语句,它到底有什么作用呢? <如何简单地理解Python中的if __name ...
- python 中 if __name__ == '__main__' 判断的作用
假设这样一个a.py文件 def fun1(): ........ def fun2(): ......... if __name__=='__main__': ......#执行的一些语句 当你执行 ...
- python中防止字符串转义
有学生问了个问题,试了好多办法都不行,搜也搜不到,只能自己尝试了,顺利解决. 问题描述: 如果一个字符串包含转义字符,如“adfdfasd\tfdsadf\t”,正常print会将\t看作转义字符ta ...
- Python中的各种转义符\n\r\t
转义符 描述 \ 续行符(在行尾时) \\ 反斜杠符号 ' 单引号 " 双引号 \a 响铃 \b 退格(Backspace) \e 转义 \000 空 \n 换行 \v 纵向制表符 \t 横 ...
- Python中if __name__ == '__main__':的作用和原理
if __name__ == '__main__':的作用 一个python文件通常有两种使用方法,第一是作为脚本直接执行,第二是 import 到其他的 python 脚本中被调用(模块重用)执行. ...
- python中functools.wraps装饰器的作用
functools.wraps装饰器用于显示被包裹的函数的名称 import functools def node(func): #@functools.wraps(func) def wrapped ...
- python中的关键字yield有什么作用?
保存当前运行状态,然后暂停执行,即将函数挂起.yield关键字后面表达式的值作为返回值返回.当使用next(),send()函数从断点处继续执行.
- Python中re操作正则表达式
在python中使用正则表达式 1.转义符 正则表达式中的转义: '\('表示匹配小括号 [()+*/?&.] 在字符组中一些特殊的字符会现出原形 所有的\s\d\w\S\D\W\n\t都表示 ...
- 对于Python中的字节串bytes和字符串以及转义字符的新的认识
事情的起因是之前同学叫我帮他用Python修改一个压缩包的二进制内容用来做fuzz,根据他的要求,把压缩包test.rar以十六进制的方式打开,每次修改其中一个十六进制字符串并保存为一个新的rar用来 ...
随机推荐
- P3952 时间复杂度
P3952 时间复杂度 题目描述 小明正在学习一种新的编程语言 A++,刚学会循环语句的他激动地写了好多程序并 给出了他自己算出的时间复杂度,可他的编程老师实在不想一个一个检查小明的程序, 于是你的机 ...
- 2016级算法第四次上机-F.AlvinZH的最“长”公共子序列
940 AlvinZH的最"长"公共子序列 思路 DP,难题. \(dp[i][j]\) :记录A的前i个字符与B的前j个字符变成相同需要的最小操作数. 初始化:dp[i][0] ...
- HTML-★★★格式与布局fixed/absolute/relative/z-index/float★★★
很多网页都存在一个悬浮的操作条或者广告区,无论如何上下滚动网页,操作条或广告区都不会动,这个就是div制作,位置锁定在屏幕指定位置,现在我们就学习下网页的格式与布局. position 位置,来给di ...
- jquery offset()和position()的区别
<script src="jquery/jquery-3.3.1.min.js"></script> <script type="text/ ...
- [CoffeeScript]使用Yield功能
CoffeeScript 1.9 开始提供了类似ES6的yield关键字. 自己结合co和bluebird做了个试验. co -- http://npmjs.org/package/co -- fo ...
- BZOJ 2457 双端队列
Sherry 现在碰到了一个棘手的问题,有N个整数需要排序. Sherry 手头能用的工具就是若干个双端队列. 她需要依次处理这 N 个数,对于每个数, Sh ...
- 更改Android编译软件版本(make/gcc/bision)
一.make版本 1.下载make的压缩包 ftp://ftp.gnu.org/gnu/make/ 2.解压,安装 cd make-x.x ./configuration sh build.sh su ...
- 各版本JDK官方下载地址
https://www.oracle.com/technetwork/java/archive-139210.html linux下JDK下载方法wget --no-check-certificate ...
- gVim安装vim-template插件后提示Undefined variable vim_template_subtype/Press ENTER or type command to continue
Win7 64位 gVim:version 8.1.1234 vim-template:github链接 安装方式: 直接下载master的zip压缩包,解压后放入本地gVim安装目录的plugin, ...
- 透视效果shader(边缘光)
思路:渲染两次. 1.第一次渲染:利用Greater进行深度测试,当目标被遮挡时,用一个边缘光的效果显示. 2.第二次渲染:正常渲染. 边缘光的思路:观察方向和顶点法向量夹角越大,边缘光越明显.边缘光 ...