Весела обнови решението на 25.10.2022 02:37 (преди около 2 години)
+def calculate_final_vector(coordsVector, colorList) :
Моля виж конвенцията за имена на променливи в Python
Използвай coords_vector
и подобни.
+ finalCoordsVector = coordsVector
+
+ for color in colorList:
+ match color.upper():
+ case 'C0FFC0': #light green
+ finalCoordsVector = (finalCoordsVector[0] - 1, finalCoordsVector[1])
+ case 'FFFFC0': #light yellow
+ finalCoordsVector = (finalCoordsVector[0], finalCoordsVector[1] - 1)
+ case 'FFC0C0': #light red
+ finalCoordsVector = (finalCoordsVector[0] + 1, finalCoordsVector[1])
+ case 'C0C0FF': #light blue
+ finalCoordsVector = (finalCoordsVector[0], finalCoordsVector[1] + 1)
+ case '00C000': #dark green
+ finalCoordsVector = (finalCoordsVector[0] + 1, finalCoordsVector[1])
+ case 'C0C000': #dark yellow
+ finalCoordsVector = (finalCoordsVector[0], finalCoordsVector[1] + 1)
+ case 'C00000': #dark red
+ finalCoordsVector = (finalCoordsVector[0] - 1, finalCoordsVector[1])
+ case '0000C0': #dark blue
+ finalCoordsVector = (finalCoordsVector[0], finalCoordsVector[1] - 1)
+ case 'FFFFFF': #white
+ continue
+ case '000000': #black
+ return finalCoordsVector
Можеш директно да break
-неш и ще се изпълни следващия ред. Така избягваш дублиране на код, а и като цяло е добра практика да се стремиш да имаш само един return
, поне според някои линтери.
+ return finalCoordsVector