对于Python中RawString的理解介绍

yipeiwu_com6年前Python基础

总结

1、'''作用: 可以表示 "多行注释" 、"多行字符串" 、"其内的单双引号不转义"

2、r 代表的意思是: raw

3、r 只对其内的反斜杠起作用(注意单个 \ 的问题)

raw string 有什么用处呢? raw string 就是会自动将反斜杠转义。

>>> print('\n')


>>> print(r'\n')
\n
>>>

(注:出现了两个空行是因为 print() 会自动添加一个空行)

再举个例子:

>>> r'\\\\\\' == '\\\\\\\\\\\\'
True
>>> print('\\\\\\\\\\\\')
\\\\\\
>>> print(r'\\\\\\')
\\\\\\
>>> 

上述就是raw string 的基本功能。

所谓的

print(r'''1
2
3
4''')  

print('''1
2
3
4''')

效果一样的原因其实就在于

三引号内没有 \ 所以 r 英雄无用武之地

有一点要注意的是,raw string 并不能让诸如 print(r'\') 起作用。因为在编译时Python还是会尝试使用反斜杠来转义单引号,从而造成字符串没有终止的问题.

举例:

>>> print(r'C:\Windows\System32')

C:\Windows\System32

>>> print('C:\\Windows\\System32')
C:\Windows\System32

>>> print('C:\Windows\System32')
C:\Windows\System32
>>>

最后一行也可以生效的原因是,\W 和 \S 什么都不是。所以在这个例子中Python发现“无法转义”,所以就不做任何转义而直接打印转义符。但是:

>>> print('C:\Windows\System32\new')
C:\Windows\System32
ew

>>> print(r'C:\Windows\System32\new')
C:\Windows\System32\new

就不一样了。

以上这篇对于Python中RawString的理解介绍就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Tensorflow Summary用法学习笔记

最近在研究tensorflow自带的例程speech_command,顺便学习tensorflow的一些基本用法。 其中tensorboard 作为一款可视化神器,可以说是学习tenso...

Python中出现IndentationError:unindent does not match any outer indentation level错误的解决方法

Python中出现IndentationError:unindent does not match any outer indentation level错误的解决方法

今天在网上copy的一段代码,代码很简单,每行看起来该缩进的都缩进了,运行的时候出现了如下错误:  【解决过程】  1.对于此错误,最常见的原因是,的确没有缩进。...

Python文本相似性计算之编辑距离详解

Python文本相似性计算之编辑距离详解

编辑距离 编辑距离(Edit Distance),又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。编辑操作包括将一个字符替换成另一个字符,插入一...

详解Python3迁移接口变化采坑记

1、除法相关 在python3之前, print 13/4 #result=3 然而在这之后,却变了! print(13 / 4) #result=3.25 "/”符号运算...

Python利用全连接神经网络求解MNIST问题详解

Python利用全连接神经网络求解MNIST问题详解

本文实例讲述了Python利用全连接神经网络求解MNIST问题。分享给大家供大家参考,具体如下: 1、单隐藏层神经网络 人类的神经元在树突接受刺激信息后,经过细胞体处理,判断如果达到阈值...