这里写自定义目录标题
- 写在最前面
- 1." \r " 回车符
- 一些有趣的小功能
- 倒计时
- 加载中(转圈)
- 进度条
- 删除功能
- 强行不换行
- (1) python2中可以在print语句的末尾加上逗号
- (2)在python3里print是一个独立函数,可以通过修改它的默认值来让其不换行
- 2." \v " 垂直制表符
- 3." \f " 换页符
写在最前面
读取文档中的文本进行处理,在这部分被坑死了
一段字符串文本,中间有/r进行换行,但文本就是打印不出来
调试到最后,通过替换" \r "发现了问题print(text.replace("\r",'\n'))
关键" \r "之前python课还学过,真真无语
只能说,如果基础更牢一些,会少一些麻烦事吧~
参考:
1." \r " 回车符
将光标移到本行开头
\r 这一转义字符的来处:之前的打印机的指令
\b表示将光标的位置回退一位
print("01234\r56789")
print("\n")
这个代码只有一行,暂无法对其进行调试,以查看运行过程
但可以根据定义,对这代码进行人肉编译,我们可以猜测:
1.首先运行 \r 前的代码:向控制台输出01234。
2.其次运行到 \r 这一转义字符:光标移至本行开头,故此时光标位于0之前。
3.继续运行剩下代码:从光标处开始向控制台输出56789。
综上猜测:可以认为之前输出的01234是被56789覆盖了的!
继续编写代码验证猜测:
print("01234\r56789");
print("0123456789\ra");
print("0123456789\rab");
print("0123456789\rabc");
一些有趣的小功能
倒计时
# 显示倒计时
import time
for i in range(10):
print("\r离程序退出还剩%s秒" % (9-i), end="")
time.sleep(1)
(第一次做gif,留黑边了,有知道怎么去除的嘛)
加载中(转圈)
import time
lst = ["\\", "|", "/", "———"]
for i in range(20):
j = i % 4
print("\r" + lst[j], end="")
time.sleep(0.2)
进度条
# 进度条功能
import time
for i in range(10):
print("\r" + "■"*i, sep="", end="")
time.sleep(0.2)
print("\n下载完成")
删除功能
import time
s = "是Yu誒222"
l = len(s)
for i in range(l):
print("\r" + s[:l-1-i] + "|", end="")
time.sleep(0.5)
强行不换行
在python里print会默认进行换行,可以通过修改参数让其不换行
(1) python2中可以在print语句的末尾加上逗号
print "hello",
print "world"
执行结果
hello world
(2)在python3里print是一个独立函数,可以通过修改它的默认值来让其不换行
def print(self, *args, sep=' ', end='\n', file=None): # known special case of print
"""
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)
Prints the values to a stream, or to sys.stdout by default.
Optional keyword arguments:
file: a file-like object (stream); defaults to the current sys.stdout.
sep: string inserted between values, default a space.
end: string appended after the last value, default a newline.
flush: whether to forcibly flush the stream.
"""
将end参数改为其他的字符可以让print不换行:
print("Dream", "it", "possible", sep="-",end="/")
print("Big big world")
运行结果如下:
Dream-it-possible/Big big world
2." \v " 垂直制表符
将光标移到下一个垂直制表符对齐处位置。
print("01234\v56789\v");
print("\v =%d\n", '\v');
print("01234567\vab");
print("0123456789\vabc");
3." \f " 换页符
将光标移到下一页开头。