我不确定在下面第2行的两种情况下读取文件的方式是否有所不同。第一种情况在open命令中具有'r',而第二种情况没有。两者输出相同的结果。这些只是实现相同结果的不同方法吗?

方案1:

def readit(filename, astr):
    infile = open(filename, 'r')
    content = infile.read()
    infile.close()
    return content.count(astr)

print(readit("payroll.txt","Sue"))


方案2:

def readit(filename, astr):
    infile = open(filename)
    content = infile.read()
    infile.close()
    return content.count(astr)

print(readit("payroll.txt","Sue"))

最佳答案

是的,这两个代码段是等效的。 'r'open的默认模式。从docs


  open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
  
  mode是一个可选字符串,用于指定打开文件的模式。默认为'r',这意味着可以读取
  文字模式。

关于python - 多种方式读取文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/28270637/

10-13 09:26