Die if else-Anweisung kann in einem Satz geschrieben werden.
-Ausdruck (mit True ausgeführt) wenn bedingter Ausdruck sonst Ausdruck (mit false ausgeführt)
Offizielle Seite Der Ausdruck "x wenn C sonst y" wertet zuerst C anstelle der Bedingung x aus. Wenn C wahr ist, wird x ausgewertet und ein Wert zurückgegeben. Andernfalls wird y ausgewertet und zurückgegeben.
Normale if-Anweisung
a=5
if a<5:
i*5
else:
i*2
Schreiben Sie in einem Satz
a=5
i*5 if a<5 else i*2
▼ Anwendung Lassen Sie uns den Inhalt der von @shiracamus gelehrten Beschreibung entschlüsseln.
python
def gradingStudents(grades):
return [grade + (0 if grade < 38 or grade % 5 < 3 else -grade % 5)
for grade in grades]
if __name__ == '__main__':
grades_count = int(input().strip())
grades = [int(input().strip()) for _ in range(grades_count)]
result = gradingStudents(grades)
print(*result, sep='\n')
「0 if grade < 38 or grade % 5 < 3 else -grade % 5」
0, wenn weniger als 38 und der Rest geteilt durch 5 3 oder weniger ist. (Wahr) Wenn False, berechnen Sie den Rest, indem Sie den negativen Wert durch 5 teilen.
Der Rest beim Teilen eines negativen Wertes wie "-5% 3". Muss ** plus Ganzzahl ** sein
-x%y Der Quotient ist negativ. Der Rest ist 0 <= der Rest <y
Im Fall von "-5% 3" Quotient: -2, Rest: 1 Rest = 3 * (-2) -5 = 1
・ Eine Beschreibung, um einen for-Satz in einen Satz zu schreiben. [Ausdruck für Variable in Iterable] └ Ausgabe ist Liste
・ Zurück [Inklusive Notation] └ Die Rückgabe wird ausgeführt, nachdem die gesamte Verarbeitung der Einschlussnotation abgeschlossen ist.
python
s1,s2="h","world"
def twoStrings(s1, s2):
return "YES" if sum([s2.count(i) for i in set(s1)]) else "NO"
twoStrings(s1, s2)
Recommended Posts