Gibt es eine pythonic Art des Schreibens:Pythonic Idiom für diese Konstruktion
if value <= 10:
print 1
elif value <= 13:
print 2
elif value <= 15:
print 3
elif value <= 24:
print 4
Die Werte in gar keine Muster fallen getestet.
ein pythonischer, sauberer, lesbarer würde vorgeschlagen werden, nachdem Sie Details angeben, wie Sie Eingang erhalten, was sind logische Beziehung zwischen diesen oberen Grenzen und gedruckten Werten, etc. Refactoring, sauber Code ist wirklich Teil des Softwareentwicklungsprozesses. – marmeladze
Sie könnten 'to_print = next ((i für i, v in enumerate ([10, 13, 15, 24], 1) wenn Wert <= v), None)' aber das ist nur eine Zuordnung Ihres genauen Codes, die wie @marmeladze sagt - ist gut und lesbar und recht flexibel, wenn man zu unteren/oberen Grenzen wechseln oder weitere Kriterien für jedes if/elif usw. hinzufügen wollte ... Also - es kommt darauf an - was denkst du ist falsch mit deinem aktuellen Code ? –
@marmeladze Dies ist ein generisches Problem. Wenn Sie eine Liste mit beliebigen Werten haben und eine Aktion durchführen wollen, abhängig vom Wert – Psionman