Question sur les fonctions dans Python

Fermé
Turtell526 - 11 mars 2021 à 18:26
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 - 11 mars 2021 à 21:56
Bonjour,

j'aimerai savoir si il est possible de faire remplacer un string par un autre dans une fonction si il répond à une condition.

Voici le code de ma fonction:

def nom(A, B):
print("Monsieur" +" " +A +" De La Tour", "a pour frère un certain " +B)
if B == "Fred"
print("Frederic")

nom("Emil","Fred")
nom("Albert", "Serge")
nom("Max", "Fred")

En supprimant les lignes relatives au if ça fonctionne sans problème:

def nom(A, B):
print("Monsieur" +" " +A +" De La Tour", "a pour frère un certain " +B)
nom("Emil","Fred")
nom("Albert", "Serge")
nom("Max", "Fred")

Monsieur Emil De La Tour a pour frère un certain Fred
Monsieur Albert De La Tour a pour frère un certain Serge
Monsieur Max De La Tour a pour frère un certain Fred

Dès lors, comment faire pour que l'ordi reconnaisse string "Fred" et le remplace par "Frederic"?

2 réponses

yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 Ambassadeur 1 554
11 mars 2021 à 18:42
bonjour,
peux-tu utiliser les balises de code quand tu partages du code? explications: https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

comment se comporte ta fonction avec le if?
as-tu déjà fait des exercices avec if?
0
Bonjour yg_be,

Merci pour une réponse aussi rapide.
N'ayant jamais fait de codage de ma vie, je m'initie doucement à python.
en découvrant les fonctions dans Python j'ai voulu tester différentes choses afin de comprendre le fonctionnement de python de manière empirique.

Du coup je me suis interrogé sur le fonctionnement de if au sein d'une fonction. J'aurais voulu savoir si il y avait moyen de faire en sorte que dans la phrase que je veux printer, l'ordi reconnaisse "Fred" et le remplacer par "Frederic"
Cependant lorsque je Run mon code la phrase qui s'affiche est la suivante:
Frederic
Monsieur Emil De La Tour a pour frère un certain Fred
Monsieur Albert De La Tour a pour frère un certain Serge
Frederic
Monsieur Max De La Tour a pour frère un certain Fred

Voici donc le Code

def nom(A, B):
       if B == "Fred":
             print("Frederic")
       print("Monsieur" +" " +A +" De La Tour", "a pour frère un certain " +B)
nom("Emil","Fred")
nom("Albert", "Serge")
nom("Max", "Fred")
0
yg_be Messages postés 23352 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 27 novembre 2024 1 554
11 mars 2021 à 21:56
il me semble que ton code se comporte comme tu l'as programmé.

comme tu l'observes, il reconnait "Fred": et fait ce que tu lui demandes dans le cas où le second paramètre est "Fred".

continue à réfléchir et à expérimenter.
que signifie "remplacer Fred par Frédéric"? qu'as-tu fait pour effectuer ce remplacement?
0