File tree Expand file tree Collapse file tree 1 file changed +74
-0
lines changed
Roadmap/19 - ENUMERACIONES/python Expand file tree Collapse file tree 1 file changed +74
-0
lines changed Original file line number Diff line number Diff line change
1
+ from enum import Enum
2
+
3
+ """
4
+ Ejercicio
5
+ """
6
+
7
+
8
+ class Weekday (Enum ):
9
+ MONDAY = 1
10
+ TUESDAY = 2
11
+ WEDNESDAY = 3
12
+ THURSDAY = 4
13
+ FRIDAY = 5
14
+ SATURDAY = 6
15
+ SUNDAY = 7
16
+
17
+
18
+ def get_day (number : int ):
19
+ print (Weekday (number ).name )
20
+
21
+
22
+ get_day (1 )
23
+ get_day (3 )
24
+
25
+ """
26
+ Ejercicio Extra
27
+ """
28
+
29
+
30
+ class OrderStatus (Enum ):
31
+ PENDING = 1
32
+ SHIPPED = 2
33
+ DELIVERED = 3
34
+ CANCELLED = 4
35
+
36
+
37
+ class Order :
38
+
39
+ status = OrderStatus .PENDING
40
+
41
+ def __init__ (self , id ) -> None :
42
+ self .id = id
43
+
44
+ def ship (self ):
45
+ if self .status == OrderStatus .PENDING :
46
+ self .status = OrderStatus .SHIPPED
47
+ self .display_status ()
48
+ else :
49
+ print ("El pedido ya ha sido enviado o cancelado" )
50
+
51
+ def deliver (self ):
52
+ if self .status == OrderStatus .SHIPPED :
53
+ self .status = OrderStatus .DELIVERED
54
+ self .display_status ()
55
+ else :
56
+ print ("El pedido necesita ser enviado antes de entregarse." )
57
+
58
+ def cancel (self ):
59
+ if self .status != OrderStatus .DELIVERED :
60
+ self .status = OrderStatus .CANCELLED
61
+ self .display_status ()
62
+ else :
63
+ print ("El pedido no se puede cancelar ya que ya se ha entregado." )
64
+
65
+ def display_status (self ):
66
+ print (f"El estado del pedido { self .id } es { self .status .name } " )
67
+
68
+
69
+ order_1 = Order (1 )
70
+ order_1 .display_status ()
71
+ order_1 .deliver ()
72
+ order_1 .ship ()
73
+ order_1 .deliver ()
74
+ order_1 .cancel ()
You can’t perform that action at this time.
0 commit comments