[oeasy]python0054_三引号_原样显示字符串_triple_quoted
三引号
回忆上次内容
\
首先是转义字符\a
是 ␇ (bell),\b
退回一格\t
水平制表符\v
、\f
LineFeed\\
输出\
\"
输出"
\'
输出'
\xhh
通过 16 进制数值转义\nnn
通过 8 进制数值转义可以 和别的字符 构成转义序列
\
还是 续行字符放在 行尾
可以让 下一行和本行 连成一行

有 什么方法 让字符串
原样
输出吗?🤔
搜索STRINGS的帮助

三引号 引用的
triple-quotes
可以 原样输出
试炼
先试试 回车符

去看看
三引号 的 帮助手册
查看参考

在 帮助模式下
查找"""

在 三引号 引用中
都会被 原样显示
换行符 和 引号
重温
转义练习
会报错
如果 没有转义的话
不知 字符串 何时结束

把 这些转义 应用起来

如果 上面 最后这句话
用三引号输出的话
应该怎么写?
不要翻页
三引号输出

引号、回车的问题 都自动解决
但是反斜杠(\) 还是 需要转义
三引号输出
除了反斜杠 需要转义 之外
其余 都可以 原样输出

三引号原样输出
输出 帮助文件

输出 网页文件

回车和tab
都可以 原样保留
能否 原样输出 一些好玩的
cowsay之类的东西
都放到 三引号里面
可以试试吗?🤔
走起来
sudo apt install cowsayecho "oeasy" | cowsay -f turtle > t.py vi t.py
用 vim 打开 t.py
修改

前后加上print 函数 和 三引号

尝试运行
处理
运行结果
海龟会坍塌

问题在于 结尾处的反斜杠
这反斜杠 本是龟壳的一部分
由于在行尾
被理解为了
"续行符"

需要明确地 写出反斜杠
才代表着
反斜杠这个字符
代表着
转义
或续行
1
个反斜杠(\)
2
个反斜杠(\\)
要把
一
个反斜杠替换为
两
个反斜杠怎么 替换 呢?
批量替换

分析一下替换语句

:%s/\\/\\\\/g
g
lobal每行中
查找
不止一次查找内容是
\\
替换内容是
\\\\
表示反斜杠这个字符 需要两个反斜杠
\\
代表1个反斜杠反斜杠本身 是 转义字符
\\
代表一个反斜杠\\\\
代表2个反斜杠:
表示进入 命令行模式 执行命令%
表示 从第一行到最后一行 全范围执行命令s
表示substitute
查找替换查找内容和替换内容 用
/
隔开g
换后效果
替换之后 什么效果
最终效果

可以让海龟说话了!
三引号(triple quote)从词源上如何理解呢?
triple
tri 来自于 three
ple 来自于 plus

triple 是 三倍的、三重的
tri-
trickle
三水滴、涓涓细流
trifle
琐事、小事
总结
这次讲了 三引号的输出
三引号中
回车和引号 都会 被原样输出
\
还是需要从\\
转义黑暗森林 快被摸排清了
没 研究过吗?🤔
还有哪个 转义序列
\e
是 干什么的?🤔我们下次再说!👋
蓝桥->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