Esconder alguns erros do Painel talvez não-membro

o seguinte Python código de fragmentos é analisado por Pylint:

if type(result) is array.array:
    read = result.tobytes()

... com o seguinte erro para a última linha:

E:401,22: Instance of 'int' has no 'tobytes' member\ 
 (but some types could not be inferred) (maybe-no-member)

a variável result é recebida de uma função externa. Como posso alterar (corrigir) o código para fazer Pylint entender? Ou como posso dizer que o resultado da função pode ter outros tipos que não int? Ou como posso dizer-lhe para ignorar essa linha em particular? (Eu sou a favor de uma resposta nesta ordem das perguntas)

Author: Liviu, 2014-10-30

2 answers

Por alguma razão, o pylint não obtém 'resultado' pode ser do tipo de array (e será com certeza sob o ramo 'se'). Não há atualmente nenhuma maneira de dizer a pylint sobre isso, embora esperançosamente será possível em algum momento. Então, por agora, você só pode desativar o aviso para essa linha específica, adicionando # pylint: disable=maybe-no-member após a declaração ofensiva ou logo acima dela. Por exemplo:

if type(result) is array.array:
    read = result.tobytes() # pylint: disable=maybe-no-member

Ou

if type(result) is array.array:
    # pylint: disable=maybe-no-member
    read = result.tobytes()
 17
Author: sthenault, 2017-11-30 21:55:31

Em vez de

result.tobytes(), 

Utilizar

getattr(result, 'tobytes')()
 -1
Author: Brian, 2015-09-10 03:31:57