Domanda

sto provando pylint per controllare il mio codice sorgente per le convenzioni. In qualche modo alcuni nomi di variabili sono abbinati con l'espressione regolare per le costanti (const-rgx) al posto del nome della variabile regex (variable-rgx). Come abbinare il nome della variabile con variable-rgx? O dovrei estendere const-rgx con la mia roba variable-rgx?

es.
C0103: 31: Invalid name "settings" (should match (([A-Z_][A-Z1-9_]*)|(__.*__))$)

È stato utile?

Soluzione

  

In qualche modo alcuni nomi di variabili sono abbinati con l'espressione regolare per le costanti (const-rgx) anziché il nome regex variabili (variabile rgx).

Sono quelle variabili dichiarate a livello di modulo? Forse è per questo che vengono trattate come costanti (almeno questo è il modo in cui devono essere dichiarati, in base alle PEP-8).

Altri suggerimenti

Ho appena disabilitare tale avviso perché non seguo queste convenzioni di denominazione.

Per fare ciò, aggiungere questa riga in cima è il modulo:

# pylint: disable-msg=C0103

Se si desidera disabilitare che a livello mondiale, quindi aggiungerlo al comando pylint:

python lint.py --disable-msg=C0103 ...

(should match (([A-Z_][A-Z1-9_]*)|(__.*__))$)

come hai detto che è il const-rgx che è solo la corrispondenza delle lettere, maiuscole, o nomi circondato da doppie sottolineature.

le variabili-rgx è

([a-z_][a-z0-9_]{2,30}$)

Se la variabile si chiama 'Impostazioni' che in effetti dovrebbe corrispondere le variabili-rgx

mi viene in mente solo 2 motivi per questo .. o impostazioni è un costante o si tratta di un bug in pylint.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top