There is some discrepency between pep8 and pylint for line continuation (https://github.com/PyCQA/pylint/issues/747) but with some minor layout changes both can pass and code looks fine, if not better in places.