Premier message, alors allez-y doucement avec moi. J'essaie de faire en sorte que lorsque je lance ma classe, le nom du restaurant apparaisse comme un titre. Le problème que j'ai rencontré avec Joe's est qu'il apparaît comme Joe's avec un S majuscule lorsque j'utilise title(). Lorsque j'utilise la fonction capitalize(), le nom de Joe's s'affiche bien, mais celui de Burger King s'affiche sous la forme Burger King avec un k minuscule. J'essaie de trouver un moyen de simplifier ce processus afin d'obtenir la lettre majuscule de chaque mot, sans mettre le S en majuscule après l'apostrophe. L'exemple sur lequel je travaille est tiré du chapitre 9 du Python Crash Course. J'utilise Geany avec la version 3.xx de Python. Merci pour votre aide.
class Restaurant():
def __init__(self, restaurant_name, cuisine_type):
"""Initialize name and cuisine type"""
self.restaurant_name = restaurant_name
self.cuisine_type = cuisine_type
def describe_restaurant(self):
print(self.restaurant_name.title() + " serves " + self.cuisine_type)
def open_restaurant(self):
print(self.restaurant_name.capitalize() + " is now open!")
restaurant = Restaurant('joe\'s', 'mexican')
burger_king = Restaurant('burger king', 'burgers')
restaurant.describe_restaurant()
restaurant.open_restaurant()
burger_king.describe_restaurant()
burger_king.open_restaurant()