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用来 ...
随机推荐
- [web]深入理解Session和Cookie
一.理解Cookie 由于http是一种无状态的协议,当用户的一次访问结束后,后端的服务器就无法知道下一次来访问的请求是不是上一次的用户了.那么Cookie的作用就是用户通过http访问一个服务器时, ...
- linux内核修炼之道
华清远见·任桥伟 人民邮电 2010 内核不学,岂能理解?今天开始正式学习内核原理 linux 发行版本Mint. cat /etc/issue # sudo lsb_release - ...
- vue-lazyload图片懒加载的简单使用
一.vue lazyload插件: 插件地址:https://github.com/hilongjw/vue-lazyload demo:http://hilongjw.github.io/vue-l ...
- epoll_wait 返回值学习以及epoll使用学习
https://blog.csdn.net/analogous_love/article/details/88721574
- Java - 冒泡排序的优化算法(尚学堂第七章数组)
import java.util.Arrays; public class TestBubbleSort2 { public static void main(String[] args) { int ...
- Git版本回退和撤销修改
版本回退: 在实际工作中,我们会不断对文件进行修改,然后不断提交修改到版本库里,一旦你把文件改乱了,或者误删了文件,还可以从最近的一个commit恢复,然后继续工作,而不是把几个月的工作成果全部丢失. ...
- (转)centos7.0安装配置DRBD
原文:http://gushiren.blog.51cto.com/3392832/1685207 首先确保两台机器时间同步,配置ssh. 方法一通过yum源安装:yum安装默认路径是/etc/drb ...
- JS框架设计之模块加载系统
任何语言一到大规模应用阶段,必然要拆封模块,有利于维护和团队协作,与Java走得最近的dojo率先引进了加载器,使用document.write与同步Ajax请求实现,后台dojo以JSONP的方法来 ...
- Robot Framework_Ride(Settings)
Settings 不管是测试套件还是测试用例都会有一个“Settings>>”的按钮,因为它默认是被折叠起来的,所以,一般不太容易发现它,更不知道点击它之后是可以展开的 1.测试用例的 S ...
- orcale 之 存储过程
之前我们学习过 PL/SQL, 那么当我们的工作中我们通过 PL/SQL 做很多的事情,那么有一个问题,在每次的座同样一件事的时候是不是都需要重新通过 PL/SQL 去完成呢?可不可以只写一次然后,在 ...