2015-02-10 15 views
21

Sto cercando di importare il progetto esistente in PyCharm. Posso rifattorizzare il codice in modo che PyCharm sia soddisfatto, ma ci piace avere spazi intorno ai due punti nei dizionari, come questo: {"A" : "B"}. Ci piace anche le assegnazioni di allineamento:Controllo stile codice Pycharm: ignora/disattiva regole specifiche

a = 1 
abc = 3 

C'è un modo per configurare PyCharm, in modo che lui ignora tutti gli errori/avvisi relativi a questa roba specifico?

risposta

0

di avere spazi intorno due punti nei dizionari, configurare Settings > Editor > PythonSpaces

Other > Before ':'

e

Other > After ':'

+0

Ho dimenticato di menzionare: opzione "prima": "" influenza anche le definizioni di funzione, ad es. 'def foo():'. –

3

@Krzysztof Stanislawek, la funzione è diversa come PyCharm segue lo PEP8 codifica stile così, è raccomandato che non ci siano spazi bianchi tra le variabili di funzione e ":", se non lo vuoi, puoi disabilitare i t per

"Settings"-> "Editor"-> "Inspections"->"PEP8 coding style violation" 

Tuttavia, questo non è raccomandato.

+0

Più di un problema è l'auto-formattazione. Posso riformattare il mio codice in '{a: b, c: d}' invece che preferito '{a: b, c: d}', o 'def foo (self):'. Il problema è che il formattatore tratta ':' lo stesso in entrambi i casi, non ci sono opzioni separate per questi casi. Non credo che ci sia un modo (sembra che a Pycharm manchi la funzione di cui ho bisogno), quindi penso che riuscirò a persuadere i miei compagni di squadra a cambiare il nostro stile di dicts in "{a: b}", o usare semplicemente regex per formattare ':' alla fine dei metodi tra parentesi. –

+0

Trovato per disabilitare le specifiche linee guida PEP8: http://iambigblind.blogspot.de/2013/02/configuring-pep8py-support-in-pycharm-27.html –

38

Utilizzando PyCharm 5 (Community Edition), è possibile effettuare le seguenti operazioni. Codice -> Controlla codice. Quindi selezionare l'errore di ispezione richiesto e fare clic sull'opzione "Sospendi" o "Ignora errori come questa" sul lato destro. prega veda la figura sottostante:

enter image description here

Quando si è scelto il "reprimere" opzione, aggiunge un commento, come mostrato nella schermata sotto:

enter image description here

reprimere può essere fatta a l'istruzione e i livelli di funzione/metodo. Se si tenta di sopprimere un argomento per una funzione, l'opzione Sopprimi funziona solo a livello di funzione (che sopprimerebbe anche altre violazioni di riferimento al nome che potrebbero esistere all'interno di quella funzione che ha soppresso le convenzioni di stile)

Hai anche l'opzione di disattivare "violazioni dello stile di codifica PEP8" (casella di spunta sotto) o la gestione esplicita "Ignora errori" manualmente. Schermata il seguente:

enter image description here

In generale, si dovrebbe forse chiedersi perché si sta sopprimendo le linee guida PEP8.Tuttavia, a volte sembra necessario, ad esempio utilizzando il modulo pytest è necessario ombreggiare le variabili ecc. Di cui si lamenta l'ispezione PEP8, nel qual caso questa funzione di PyCharm è molto utile.

+1

Risposta simile fornita qui: http://stackoverflow.com/ a/33970979/1882064 – arcseldon

+0

Nota che Sopprimi modifica il codice sorgente (in modo che nessun altro sviluppatore sul tuo progetto veda l'avviso) mentre Ignora li spegne solo per la tua macchina (Profilo di ispezione locale); altri sviluppatori con profili diversi vedranno comunque l'avviso. – Phrogz

+2

Se si desidera disattivare determinati errori in modo esplicito come nell'ultima schermata. Ecco un elenco dei codici di errore PEP8: http://pep8.readthedocs.io/en/release-1.7.x/intro.html#error-codes – Rotareti