Следуя моему предыдущему вопросу ( "Pylint E0202 False Positive?" ), вот еще один (вполне определенный, я думаю)
мы используем подпроцесс модуля для выполнения, ну, в общем,подпроцесс.
Создание примера кода привело к следующему:
"Example code for E1103"
import subprocess
pipeOpen = subprocess.Popen(args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True)
(responseData, errorData) = pipeOpen.communicate()
print "Error code: '%s'. Error data: '%s'" % (pipeOpen.returncode, errorData.strip("\n").strip("\r"))
Pylint скажет:
E1103: 9,67: Экземпляр 'list' не имеетчлен 'strip' (но некоторые типы не могут быть выведены)
Если посмотреть на pipeOpen.communicate (), он опускается до _communicate.И действительно, stderr инициализируется в список, однако перед возвращением, если self.universal_newlines имеет значение true, он преобразует список в строку с символами новой строки.
Это случай #pylint: ignore-msg=E1103
или лучшесообщить об этом разработчикам Pylint?