file()
- это тип, например, int или список. open()
- это функция для открытия файлов, которая возвращает объект file
.
Это пример того, когда вы должны использовать open:
f = open(filename, 'r')
for line in f:
process(line)
f.close()
Это пример того, когда вы должны использовать файл:
class LoggingFile(file):
def write(self, data):
sys.stderr.write("Wrote %d bytes\n" % len(data))
super(LoggingFile, self).write(data)
Как вы можете видеть, есть веская причина для того, чтобы оба существовали, и ясный вариант использования для обоих.