Supponiamo di voler verificare se x
appartiene all'intervallo da 0 a 0,5. Come posso farlo?Come scoprire se un numero appartiene a un determinato intervallo in Python?
risposta
print 'yes' if 0 < x < 0.5 else 'no'
range()
è per la generazione di array di interi consecutivi
No, non è possibile farlo. range()
si aspetta argomenti interi. Se vuoi sapere se x
è all'interno di questo intervallo di provare una qualche forma di questo:
print 0.0 <= x <= 0.5
stare attenti con il limite superiore. Se si utilizza range()
è esclusa (range(0, 5)
non include 5!)
-1: nessun riferimento alla documentazione e nessun esempio di quale intervallo funzioni realmente. +1: essere educati di fronte a una domanda assurda. –
"Intervallo" è anche una parola inglese, non solo un nome di funzione;) –
>>> s = 1.1
>>> 0<= s <=0.2
False
>>> 0<= s <=1.2
True
Per verificare se un certo numero n è nel range compreso indicata con il numero due A e B si esegue una
if a <= n <= b:
print "yes"
else:
print "no"
usa la sostituzione >=
e <=
con >
e <
verificare se n
è nell'intervallo esclusiva indicato con a
e b
(cioè a
e b
non sono t se stessi membri della gamma).
L'intervallo produce una progressione aritmetica definita dai due (o tre) argomenti convertiti in numeri interi. Vedi lo documentation. Questo non è quello che vuoi, immagino.
la tua versione alternativa è semplicemente errata – SilentGhost
errata come in errore di concetto, non errore di battitura – SilentGhost
Bene, funziona con numeri interi. Per i float può * funzionare *, a seconda dei valori di been. – Abgan
Vecchio fedele:
if n >= a and n <= b:
E non sembra Perl (scherzo)
Questo non è Pythonic. –
Vorrei utilizzare la libreria NumPy, che permetterebbe di fare questo per un elenco di numeri così :
from numpy import array
a = array([1, 2, 3, 4, 5, 6,])
a[a < 2]
if num in range(min, max):
"""do stuff..."""
else:
"""do other stuff..."""
Questo non funzionerà per l'esempio dell'OP di 'float's. Vedi la risposta di @ vartec. –
Probabilmente questa è un'implementazione molto lenta. –
grazie you..i preso range() concetto esiste un metodo built-in? – user46646
metodo integrato per cosa? – SilentGhost
metodo incorporato per scrivere 0
vartec