Altro
Mettere una semplice dichiarazione if-then-else su una linea
Possibile duplicato: Operatore ternario Python
Mi sto addentrando in Python e mi piace molto la brevità della sintassi. Tuttavia, c'è un modo più semplice di scrivere una dichiarazione if
-then
-else
in modo che stia su una sola riga?
Per esempio:
if count == N:
count = 0
else:
count = N + 1
C'è un modo più semplice di scrivere questo? Cioè, in Objective-C lo scriverei come:
count = count == N ? 0 : count + 1;
C'è qualcosa di simile per Python?
Aggiornamento
So che in questo caso posso usare count == (count + 1) % N
.
Sto chiedendo la sintassi generale.
772
3
Questo è più specificamente un'espressione operatore ternario che un if-then, ecco la sintassi python
Esempio migliore: (grazie Mr. Burns)
'Sì' if fruit == 'Apple' else 'No'
Ora con assegnazione e contrasto con la sintassi if
vs
- l'operatore ternario. Anche se direi che la tua soluzione è più leggibile di questa.
Sintassi ternaria generale:
Un altro modo può essere:
ad esempio
Questo valuta entrambi i rami prima di sceglierne uno. Per valutare solo il ramo scelto:
ad esempio: