2015-11-27 15 views
20

Esiste comunque la possibilità di nascondere gli errori E1101 per gli oggetti creati da una libreria specifica? Il nostro ampio repository è disseminato di #pylint: disable=E1101 attorno a vari oggetti creati dai panda.Disabilitazione di Pylint nessun membro - Errore E1101 per librerie specifiche

Per esempio, pylint getterà un errore di nessun membro del seguente codice:

import pandas.io.data 
import pandas as pd 
spy = pandas.io.data.DataReader("SPY", "yahoo") 
spy.to_csv("test.csv") 
spy = pd.read_csv("test.csv") 
close_px = spy.ix["2012":] 

avrà i seguenti errori:

E: 6,11: Instance of 'tuple' has no 'ix' member (no-member) 
E: 6,11: Instance of 'TextFileReader' has no 'ix' member (no-member) 
+0

Sarebbe corretto presumere che non si desideri disattivare globalmente questo controllo degli errori? – shuttle87

+0

Non voglio disabilitarlo globalmente. Voglio disabilitarlo per qualsiasi cosa creata dai panda. –

+0

La discussione intorno a questa risposta potrebbe convincerti che probabilmente non puoi, ma puoi dire a Pylint di ignorare gli errori sulle singole linee: http://stackoverflow.com/a/26668602/270001 –

risposta

18

È possibile contrassegnare i loro attributi come generate dinamicamente utilizzando generated-members opzione .

E.g. per i panda:

generated-members=pandas.* 
+0

Dove posizioni questa linea? – caliph

+0

@caliph Nel file .pylintrc - pylint config. – carabas

+4

Questo non ha funzionato per me. :-( –

Problemi correlati