Python转义字符相关问题
这个问题很难描述, 请原谅我用这种模糊的题目.
Python在有时候读取文件时会用r来避免转义字符
例如pandas.to_csv(r'/desktop/file.csv')
或者re.compile(r'xxx')
假如我的path是一个变量时咋解决呢?
例如
'''
path = '/desktop/file.csv'
pandas.to_csv(rpath)
'''
肯定是编译错误
请问此时应该怎么处理r这个字母和变量呢?
回答:
你对啥是转义字符和这个 r
加哪儿都没搞清楚。
我们知道有一些 ASCII 字符是不可见的、但是确确实实存在,比如回车符(\r
)、换行符(\n
)、制表符(\t
)等等。
那么为了能用可见字符来表示它们,就是引入了转义字符的概念。
但是引入转义字符后带来了新的问题,比如我有一个路径 C:\Users\temp
,表示 C
盘下 Users
目录下的 temp
文件夹。但是 \t
是个转义字符,所以在计算机看来就变成了表示 C
盘下的 Users*一个制表符*emp
文件夹,这路径就错了。
为了解决这个问题,有两种办法,一种是对 \
转义,让计算机知道这是一个字符、而不是一个转义字符开头的反斜杠,写法变成 C:\\Users\\temp
。
但这么写很啰嗦,需要层层转义,有没有办法可以让计算机不认为反斜杠是个转义字符的开头呢?所以才有了 r
。
'C:\\Users\\temp'
和 r'C:\Users\temp'
两者是等效的。
所以你的问题答案很简单,r
是修饰字符串字面值的、而不是修饰变量的。
python">path = r'/desktop/file.csv' // 写也是写在这里pandas.to_csv(path)
以上是 Python转义字符相关问题 的全部内容, 来源链接: utcz.com/a/164739.html