三引号

回忆上次内容

  • \ 首先是转义字符

    • 可以 和别的字符 构成转义序列
  • \a是 ␇ (bell),
  • \b 退回一格
  • \t 水平制表符
  • \v\f LineFeed
  • \\ 输出 \
  • \" 输出 "
  • \' 输出 '
  • \xhh 通过 16 进制数值转义
  • \nnn 通过 8 进制数值转义
  • \ 还是 续行字符
    • 放在 行尾
    • 可以让 下一行和本行 连成一行

  • 有 什么方法 让字符串

    • 原样输出吗?

搜索STRINGS的帮助

  • 三引号 引用的

    • triple-quotes
    • 可以 原样输出

试炼

  • 先试试 回车符

  • 去看看

    • 三引号 的 帮助手册

查看参考

  • 在 帮助模式下

    • 查找"“”

  • 在 三引号 引用中

    • 换行符 和 引号

      • 都会被 原样显示

重温

  • 转义练习

    • 如果 没有转义的话

      • 会报错
    • 不知 字符串 何时结束

  • 把 这些转义 应用起来

  • 如果 上面 最后这句话

    • 用三引号输出的话
    • 应该怎么写?
  • 不要翻页

三引号输出

  • 引号、回车的问题 都自动解决

    • 但是反斜杠(\) 还是 需要转义

三引号输出

  • 除了反斜杠 需要转义 之外

    • 其余 都可以 原样输出

三引号原样输出

  • 输出 帮助文件

  • 输出 网页文件

  • 回车和tab

    • 都可以 原样保留
  • 能否 原样输出 一些好玩的
    • cowsay之类的东西
    • 都放到 三引号里面
  • 可以试试吗?

走起来

sudo apt install cowsay
echo "oeasy" | cowsay -f turtle > t.py
vi t.py

  • 用 vim 打开 t.py

修改

  • 前后加上print 函数 和 三引号

  • 尝试运行

处理

  • 运行结果

    • 海龟会坍塌

  • 问题在于 结尾处的反斜杠

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

  • 需要明确地 写出反斜杠

    • 1反斜杠(\)

      • 代表着 转义续行
    • 2反斜杠(\\)
      • 才代表着 反斜杠这个字符
  • 要把 个反斜杠
    • 替换为 个反斜杠
    • 怎么 替换 呢?

批量替换

  • 分析一下替换语句

  • :%s/\\/\\\\/g

    • : 表示进入 命令行模式 执行命令
    • % 表示 从第一行到最后一行 全范围执行命令
    • s 表示 substitute 查找替换
    • 查找内容和替换内容 用/隔开
      • 查找内容是\\

        • 反斜杠本身 是 转义字符

          • 表示反斜杠这个字符 需要两个反斜杠
          • \\ 代表1个反斜杠
      • 替换内容是\\\\
        • \\ 代表一个反斜杠
        • \\\\ 代表2个反斜杠
    • g
      • global

        • 每行中查找不止一次

换后效果

  • 替换之后 什么效果

最终效果

  • 可以让海龟说话了!
  • 三引号(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

[oeasy]python0054_三引号_原样显示字符串_triple_quoted的更多相关文章

  1. python--基础学习(三)字符串单引号、双引号、三引号

    1.基本认识 单引号字符串:'python' 双引号字符串:"python" 三引号字符串:'''python'''(三单引号),"""python& ...

  2. 11.5 Android显示系统框架_Vsync机制_黄油计划_三个方法改进显示系统

    5. Vsync机制5.1 黄油计划_三个方法改进显示系统vsync, triple buffering, vsync虚拟化 参考文档:林学森 <深入理解Android内核设计思想>第2版 ...

  3. Python 学习笔记:Python 中单引号(')、双引号(")、三引号(''',""")的使用以及不转义字符串

    一.单引号.双引号及三引号: 参考博客:https://www.cnblogs.com/chenhuan001/p/8006017.html 以上四种形式都是 Python 表示字符串的方式,具体的效 ...

  4. Python中字符串使用单引号、双引号标识和三引号标识,什么是三引号?什么情况下用哪种标识?

    一.三引号是指三个单引号或者三个双引号: 二.Python中字符串如果以单引号.双引号标识和三引号标识开头,则字符串结尾也必须是对应的标识,不能变更: 三.三者的异同: 1.三者都是字符串,大部分情况 ...

  5. python单引号(')、双引号(")、三引号(''',""")

    python对字符串的表示方法比c更有灵活性,但是也更难理解. 为了在平时使用.看代码过程中对着单引号(').双引号(").三引号(''',""")不混淆,知道 ...

  6. Python中单引号,双引号,三引号

    1.单引号与双引号的区别 s1=‘let‘s go’(明显我们是想用单引号表示let’s go这个字符串的,但是python只知道用‘’来表示字符串,所以python就把字符串中的‘字符当成单引号处理 ...

  7. python:单引号,双引号和三引号

    python中字符串可以用单引号括起来,也可以用双引号,这两种方式是等价的需要表示一个字符串对象的话,单引号和双引号没有区别 为什么需要单引号和双引号同时支持,而一般都是”呢? 比如” 双引号’里面有 ...

  8. python中单引号, 双引号,三引号的差异

    1. 单引号和双引号用法都是一样的,但是如果字符串里有相同的字符时要使用\进行转义 举例:1) print 'hello'2) print "hello"1和2,结果都是hello ...

  9. python 3.5 之 单双三引号

    1. 单引号和双引号用法都是一样的,但是如果字符串里有相同的字符时要使用\进行转义 举例:1) print 'hello'2) print "hello"1和2,结果都是hello ...

  10. (三)Boost库之字符串处理

    (三)Boost库之字符串处理 字符串处理一直是c/c++的弱项,string_algo库很好的弥补了这一点. string_algo 库算法命名规则: 前缀i    : 有这个前缀表名算法的大小写不 ...

随机推荐

  1. Linux安装ElastSearch

    Linux安装ES 准备好Linux系统,软件安装前需要对当前系统做一些优化配置 系统配置修改 一.内存优化 在/etc/sysctl.conf添加如下内容: fs.file-max=655360 系 ...

  2. C# winform GDI+ 五子棋 (一):基本界面和胜负判断

    棋盘和棋子采用GDI+画上去的.棋盘18*18.棋子是用DrawElipse画的,白棋和黑棋分两个List集合存储,方便判断五子连线的情况. 主要说一下,五子连线的思路,把集合按行和按列以及按正斜和反 ...

  3. k8s ingress部署安装

    ingress概念 ingress与service,deployment同样都是k8s中的一种资源 ingress用于实现域名方式访问k8s内部应用 安装ingress 1. 安装helm: wget ...

  4. k8s中的pod更新策略

    StatefulSet(有状态集,缩写为sts)常用于部署有状态的且需要有序启动的应用程序,比如在进行SpringCloud项目容器化时,Eureka的部署是比较适合用StatefulSet部署方式的 ...

  5. 音视频积累-Wakeups 解决

    一.现象 ReplayKit2运行过程中经常会被系统杀掉,在USB连接手机后可以导出crash log Date/Time: 2017-09-29 12:16:59.321071 +0800 OS V ...

  6. 8.17考试总结(NOIP模拟42)[卷·简单题·粉丝·字符串]

    你的败因只有一个,就是与我为敌. ­ T1 卷 解题思路 乍一看,简单的树形 DP . 后来一看数据范围,发现事实并非如此.(\((10^9)^{2\times 10^5}\)????) 毕竟取 \( ...

  7. 基于WebSocket的modbus通信(三)- websocket和串口

    WebSocket传递ModbusTCP数据包 错误纠正 上一篇还有个错误,就是客户端写数据时服务端不需要响应,但我的服务端响应了的.我选择改客户端,把写数据时接收到的响应丢弃. PrintBytes ...

  8. 查看SO KO 执行程序相关信息命令

    1 查看SO 查看so库的方法__臣本布衣_新浪博客 (sina.com.cn) 1.nm -D libxxx.so 打印出符号信息. 一般这样用:nm -D libxxx.so |grep T $ ...

  9. css摩天轮

    <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8 ...

  10. kettle从入门到精通 第三十四课 kettle 错误处理

    1.我们在平常写应用程序的时候,需要主动捕获异常或者错误,不然程序有可能异常退出.同样kettle 也支持异常或者错误处理,下图展示的是在批量插入数据的时候捕获异常,如唯一健冲突,死锁等,并将错误信息 ...