Spazio tra segno negativo e nome variabile

7

Ho provato a fare una ricerca su Google, oltre a cercare questo sito Stack Exchange ma non ho trovato una domanda relativa direttamente a questo.

Il PEP 8 - Style Guide for Python Code ha molti buoni consigli di stile, tuttavia Non penso che menzionino se uno spazio tra segno meno o negativo ( - ) e nome di variabile sia più o meno leggibile.

Domanda

È un problema (molto) minore, ma che è considerato più leggibile?

  • false_positive = -true_positive
  • false_positive = - true_positive

Motivazione

Chiedo di non essere banale, ma perché nei miei precedenti corsi di matematica spesso mi ritrovo a non notare il segno negativo nelle equazioni importanti, come l'equazione per il calcolo di entropia :

Spesso non noto il segno - prima della sommatoria, quindi renderlo opportuno sarebbe auspicabile.

    
posta Wesley Baugh 03.03.2013 - 06:52
fonte

3 risposte

12

Non ho trovato nulla a riguardo nella guida allo stile di Python, come hai detto, ma cercando " spaziatura operatore unario " ha portato più hit da varie lingue , ad esempio per Javascript :

No space should separate a unary operator and its operand except when the operator is a word such as typeof.

O questo per C :

Don't use spaces around unary operators, except sizeof and casts

Nel kernel Linux :

Use one space around (on each side of) most binary and ternary operators, [...] but no space after unary operators:

Si noti che uno stile di scrittura per code , che di solito è scritto con un font a larghezza fissa e prevalentemente latini, è molto diverso da quello per le equazioni, dove è possibile trovare sia le lettere latine che quelle greche , costrutti topologici come le frazioni o quei segni che circondano l'epsilon che hai lì, e altre cose che li rendono molto più complessi del codice.

    
risposta data 03.03.2013 - 07:12
fonte
1

L'ho già incontrato prima, e ho usato

var false_positive = 0 - true_positive

per assicurarti che l'intento sia chiaro. Questa è la forma più leggibile.

    
risposta data 04.03.2013 - 04:00
fonte
0

Penso che il secondo sia leggermente meno cattivo, perché il segno meno è un po 'meno probabile che venga letto come parte della parola; Tuttavia, penso che entrambe le forme siano cattive.

Sostituirei il tutto con

false_positive = -1 * true_positive

o anche

false_positive = (-1) * true_positive

in qualsiasi lingua.

    
risposta data 07.03.2013 - 03:27
fonte

Leggi altre domande sui tag