Byron's comment does give you a stream, but a word of caution: if you are used to using withor .readlines()reading streams, do not try them here. Go easy .read().
git.Repo().commit(COMMIT_HEX_SHA).tree['subdir/somefile.ext'].data_stream.read()
, git show :
git.Repo().git.show('{}:{}'.format(COMMIT_HEX_SHA, 'subdir/somefile.ext'))