当前位置: 首页 > 工具软件 > RPython > 使用案例 >

python读取文件路径前面加 r 的作用

诸嘉澍
2023-12-01

加上 r 就是保持字符串原始值的含义,即不对其中的符号进行转义

因为windows下的目录字符串中通常有斜杠道 “\”,而斜杠在 Python 的字符串中有转义的作用。
例如:\n 表示换行如果路径中有 \new 就会被转义。\t 表示横向制表符,如果路径中有 \title 就会被转义.

加上 r 就是为了避免这种情况

如下例子

minute_data = pd.read_csv('D:\资料\today\data.csv', encoding='gbk')

报下面的错

OSError: [Errno 22] Invalid argument:
‘D:\\资料\\today\data.csv’

出现这种错误的原因是由于读取不到这个文件,看Traceback报的错误,最后一行,很明显读取不到 data.csv,前面的 D:\\资料\\today 没错,后面的下划线怎么变了,变成单下划线。

解决方式1

minute_data = pd.read_csv('D:\\资料\\today\\data.csv', encoding='gbk')

解决方式2

minute_data = pd.read_csv(r'D:\资料\today\data.csv', encoding='gbk')

解决方式3

minute_data = pd.read_csv('D:/资料/today/data.csv', encoding='gbk')

将 \ 换为 / ,或者 \\,这是因为Python中\t为换行符,而无法识别。

 类似资料: