Peteryo01223 发表于 2021-1-22 09:19:40

第29课:文件open中的 r

本帖最后由 Peteryo01223 于 2021-1-22 09:20 编辑

问题:以下第9行中的 r, 有或者没有,都能 run 成功。那么,它的存在,是为了读取文件的时候,确保不改变原文件内容吗?
谢谢指点

def function1(temp1, temp2):
    print('\n文件%s的前%s的内容如下:\n' % (temp1, temp2))
    f = open(temp1, encoding = 'utf-8')
    for i in range(int(temp2)):
      print(f.readline(), end='')

    f.close()
   
temp1 = input(r'请输入需要打开的文件(C:\\text.txt\):')
temp2 = input('请输入你需要PC打印该文件的行数:')
function1(temp1, temp2)

binzai_007 发表于 2021-1-22 09:28:36

这里的r只是确保后面单引号里的全部是字符,斜杠不转义,因为你们文件目录里含有斜杠。

Peteryo01223 发表于 2021-1-22 09:38:06

binzai_007 发表于 2021-1-22 09:28
这里的r只是确保后面单引号里的全部是字符,斜杠不转义,因为你们文件目录里含有斜杠。

好的,多谢啦。
查了一下网上,确实如此:在使用python进行读取的文件时,总需要在路径中去除掉一些特殊意义的字符进行转义。搜了一下,在python中除了可以使用‘\’之外,也可以使用r加在所要处理的字符外面。
页: [1]
查看完整版本: 第29课:文件open中的 r