对于Python中RawString的理解介绍
总结
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原始字符串(raw strings)用法实例
本文实例讲述了Python原始字符串(raw strings)用法,分享给大家供大家参考.具体如下: Python原始字符串的产生正是由于有正则表达式的存在.原因是ASCII 字符和正则表达式特殊字符间所产生的冲突.比如,特殊符号"\b"在ASCII 字符中代表退格键,但同时"\b"也是一个正则表达式的特殊符号,代表"匹配一个单词边界". 为了让RE 编译器把两个字符"\b"当成你想要表达的字符串,而不是一个退格键,你需要
-
对于Python中RawString的理解介绍
总结 1.'''作用: 可以表示 "多行注释" ."多行字符串" ."其内的单双引号不转义" 2.r 代表的意思是: raw 3.r 只对其内的反斜杠起作用(注意单个 \ 的问题) raw string 有什么用处呢? raw string 就是会自动将反斜杠转义. >>> print('\n') >>> print(r'\n') \n >>> (注:出现了两个空行是因为 print() 会自
-
基于Python中的yield表达式介绍
python生成器 python中生成器是迭代器的一种,使用yield返回函数值.每次调用yield会暂停,而可以使用next()函数和send()函数可以恢复生成器. 这里可以参考Python函数式编程指南:对生成器全面讲解 注意到yield是个表达式而不仅仅是个语句,所以可以使用x = yield r 这样的语法. 这个知识点在协程中需要使用.协程的概念指的是在一个线程内,一个程序中断去执行另一个程序,有点类似于CPU中断.这样减少了切换线程带来的负担,同时不需要多线程中的锁机制,因为不存在
-
python中rb含义理解
Python文件读写的几种模式: r,rb,w,wb 那么在读写文件时,有无b标识的的主要区别在哪里呢? 文件使用方式标识 'r':默认值,表示从文件读取数据 'w':表示要向文件写入数据,并截断以前的内容 'a':表示要向文件写入数据,添加到当前内容尾部 'r+':表示对文件进行可读写操作(删除以前的所有数据) 'r+a':表示对文件可进行读写操作(添加到当前文件尾部) 'b':表示要读写二进制数据. 读文件 进行读文件操作时,直到读到文档结束符(EOF)才算读取到文件最后,Python会认为
-
Python中字符串的基础介绍及常用操作总结
目录 1.字符串的介绍 2.字符串的下标 3.字符串切片 4.字符串find()操作 5.字符串index()操作 6.字符串count()操作 7.字符串replace()操作 8.字符串split()操作 9.字符串startswith()操作 10.字符串endswith()操作 11.字符串upper()操作 12.字符串lower()操作 13.字符串title()操作 14.字符串capitalize()操作 15.字符串strip()操作 16.字符串rfind()操作 17.字符
-
Python中super()的理解以及应用场景实例
目录 一.前言 二.什么是super 三.super的常用使用场景 总结 一.前言 最近有粉丝向我咨询super相关的问题,说网上搜索到的教程不够通俗易懂,看了之后还是不太理解.所以在这里基于我自己的理解来讲解一下super. 二.什么是super 1.super也是一个类,是的.他不是一个方法也不是一个内置的关键字. class A: pass print(type(super(A))) 输出结果 <class 'super'> 直接通过查看super的源码也可以看出它是一个类 另外,网上很
-
Python 中pandas.read_excel详细介绍
Python 中pandas.read_excel详细介绍 #coding:utf-8 import pandas as pd import numpy as np filefullpath = r"/home/geeklee/temp/all_gov_file/pol_gov_mon/downloads/1.xls" #filefullpath = r"/home/geeklee/temp/all_gov_file/pol_gov_mon/downloads/26368f3
-
Python中@property的理解和使用示例
本文实例讲述了Python中@property的理解和使用.分享给大家供大家参考,具体如下: 重看狗书,看到对User表定义的时候有下面两行 @property def password(self): raise AttributeError('password is not a readable attribute') @password.setter def password(self, password): self.password_hash = generate_password_ha
-
python中常用的数据结构介绍
栈 # 使用List作为栈 stack = [3, 4, 5] # 入栈 stack.append(6) # 出栈 val = stack.pop() # 栈定元素 val = stack[-1] 队列 队列是FIFO, 但是List对于First Out效率不够高.通常用双端队列Deque来实现队列 Deque的特点是,两端添加和删除都是O(1)的时间复杂度 from collections import deque queue = deque(["Eric", "John
-
python中sys模块的介绍与实例
python版本: Python 2.7.6 1: sys是python自带模块. 利用 import 语句输入sys 模块. 当执行import sys后, python在 sys.path 变量中所列目录中寻找 sys 模块文件.然后运行这个模块的主块中的语句进行初始化,然后就可以使用模块了 . 2: sys模块常见函数 可以通过dir()方法查看模块中可用的方法. 结果如下, 很多我都没有用过, 所以只是简单介绍几个自己用过的方法. $ python Python 2.7.6 (defau
-
Python中字典的基础介绍及常用操作总结
目录 1.字典的介绍 2.访问字典的值 (一)根据键访问值 (二)通过get()方法访问值 3.修改字典的值 4.添加字典的元素(键值对) 5.删除字典的元素 6.字典常见操作 1.len 测量字典中键值对的个数 2. keys 返回一个包含字典所有KEY的列表 3. values 返回一个包含字典所有value的列表 4. items 返回一个包含所有(键,值)元祖的列表 5.遍历字典的key(键) 6.遍历字典的value(值) 7.遍历字典的items(元素) 8.遍历字典的items(键
随机推荐
- CSS网页布局入门教程1:一列固定宽度
- Nginx 403 forbidden的解决办法
- ASP.NET中 CheckBox复选框控件的使用
- javascript引擎长时间独占线程造成卡顿的解决方案
- asp.net(C#)遍历memcached缓存对象
- php 指定范围内多个随机数代码实例
- 纯js实现瀑布流展现照片(自动适应窗口大小)
- Java 中组合模型之对象结构模式的详解
- 对于jQuery性能的一些优化建议
- jquery实现加载进度条提示效果
- 浅谈Javascript如何实现匀速运动
- 月下载量上千次Android实现二维码生成器app源码分享
- PHP获取数组最后一个值的2种方法
- android判断设备是否有相机的实例代码
- C语言 位运算详解及示例代码
- layui 富文本赋值,取值,取纯文本值的实例
- MySQL视图简介及基本操作教程
- Linux下升级安装python3.8并配置pip及yum的教程
- Android 7.0 运行时权限弹窗问题的解决
- Java wait和notify虚假唤醒原理