from shirt import Shirt shirt_one = Shirt('red', 'L', 'long-sleeve', 25) print(shirt_one.price) shirt_one.price = 10 print(shirt_one.price) shirt_one.price = 20 print(shirt_one.price) shirt_one.color = 'yellow' print(shirt_one.color) shirt_one.size = 'M' print(shirt_one.size) shirt_one.style = 'short_sleeve' print(shirt_one.style)
print(shirt_one.color) print(shirt_one.price) shirt_two.change_price(45) # price change using method print(shirt_two.price) # How to access and change attribute values in python class # Shirt class has method to change shirt price # Values can be changed either by assigning value or by using method shirt_one.color='Green' print(shirt_one.color) shirt_one.size='L' print(shirt_one.size) shirt_one.price=43 print(shirt_one.price) # * There are some drawbacks to accessing attributes directly versus writing a method for accessing and displaying attributes. # * Programming languages like C++/C you can explicitely state wheather or not an object should be allowed to change or access attribute values directly. # * Changing value via method gives more flexibility in long term
from shirt import Shirt # import Shirt class from python file shirt_one = Shirt('red', 'M', 'long sleeve', 35) shirt_two = Shirt('red', 'S', 'short sleeve', 30) print(shirt_one.price) print(shirt_two.price) shirt_two.price_change(45) print(shirt_one.price) print(shirt_two.price) # alternatively, we can chage the attribute, like price using accessing attributes # this approach has its own drawbacks # so, it's recommended to change the attribute value with method # since it brings us more flexibility, when, for example, our measure units change # we can specify the change once inide class method and use this afterwards shirt_one.color = 'yellow' shirt_two.size = 'L' print(shirt_one.color) print(shirt_two.size)