Вы также можете оставить метод неопределенным в базовом классе для достижения того же эффекта.
import os
class File(object):
def __init__(self, filename):
if os.path.isfile(filename):
self.filename = filename
self.file = open(filename, 'rb')
self._read()
else:
raise Exception('...')
class FileA(File):
def _read(self):
pass
file = FileA('myfile.a')
Для понимания классов Python бесценно иметь такое понимание наследования классов.