Question sur les fonctions dans Python

Turtell526 -  
yg_be Messages postés 23541 Date d'inscription   Statut Contributeur Dernière intervention   -
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 23541 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 584
 
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
Turtell526
 
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 23541 Date d'inscription   Statut Contributeur Dernière intervention   1 584
 
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