IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

utilisation d'une fonction


Sujet :

Python

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2019
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2019
    Messages : 80
    Points : 63
    Points
    63
    Par défaut utilisation d'une fonction
    Bonjour, je suis un MOOC sur python et je ne comprends pas la fonction suivante en capture d'écran :Nom : Capture d’écran 2020-09-06 à 16.10.54.png
Affichages : 273
Taille : 135,6 Ko
    Je n'arrive pas à faire fonctionner la fonction dans un interpréteur. Auriez vous quelque indice de réponses? Merci

  2. #2
    Membre régulier
    Homme Profil pro
    Curieux
    Inscrit en
    Avril 2020
    Messages
    114
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Curieux
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2020
    Messages : 114
    Points : 85
    Points
    85
    Par défaut
    Salut,

    Aie ^^, le premier indice est celui que l'on m'a donné. Commence par les bases et lis au moins un tuto de débutant ^^.

    Ensuite, dit qu'une fonction, pour ce que j'en connais, prend un argument et fais avec la toutouille qu'on à coder dedans. Si la toutouille c'est de faire l'argument + l'argument, elle ne fera que cette addition. Si ta toutouille c'est deprendre un argument ( de type texte), de créer une liste, de remplir cette liste avec chacun des terme trouvé dans cette chaine de caractères puis de la retourner avec un espace comme séparateur, Ba elle ne fera que cela.

    Retourner n'est pas égale à afficher.
    Tu aurais au moins pu faire l'effort de reporter le code dans ton post, ensuite pour le reste des tes interrogations ne sachant pas ce que tu fais ni comment Ba joker.

  3. #3
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 282
    Points : 36 769
    Points
    36 769
    Par défaut
    Salut,

    Citation Envoyé par Diegomarck Voir le message
    Je n'arrive pas à faire fonctionner la fonction dans un interpréteur. Auriez vous quelque indice de réponses? Merci
    Pour moi le seul intérêt de ce genre d'exercice est de l'exécuter "mentalement" pour comprendre ce que font chaque instructions.

    La recopier pour l'exécuter par l'interpréteur Python devrait juste permettre de vérifier que vous avez bien compris ce que faisait le code.

    Mais si vous n'arrivez même pas à lancer l'interpréteur Python et y recopier la fonction... sans savoir décrire le soucis que vous avez. On ne se déplacera pas chez vous pour voir ce que vous avez tappé et ce qui s'affiche sur votre écran!

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2019
    Messages
    80
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 49
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Février 2019
    Messages : 80
    Points : 63
    Points
    63
    Par défaut suite
    Bonjour, merci de vos réponses. Je vais plus précis, ce sera plus facile.
    Dan la première question le code est :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    a = []
    for n in [1, 2, '3', 4, 'FIN']:
        a.append(str(n))
    print(",".join(a))
    ce qui veut dire pour moi : soit a la chaine d'élément vide, pout n prenant ces valeur ... , ajoute la chaine de caractère n à a et écrit cette chaine avec des virgule entre chaque caractères. Pourriez vous me dire mes erreur d'interprétation?
    La seule réponse possible me semble être celle ci : 1,2,3,4,FIN.

    Pour la deuxième question, je ne comprends pas bien le sens du code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    def to_str(a):
        tmp = []
        for i in a:
            tmp.append(str(i))
        return " ".join(tmp)
    Soit la fonction to_str(a), soit la chaine de caractère vide tmp.
    pour i de a, rajoute les élément str(i) à tmp et retourne ces caractères en les joignants à tmp.
    Mais dans l'interpréteur si je remplace to_str(a) par les différent appel proposé soit par to_str([1, 2, 3]) et les autre aussi, je ne trouve rien. Je ne comprends pas le jeux entre a, tmp et i. Du coup je ne vois pas comment faire marcher ça. Auriez-vous une idée?

  5. #5
    Rédacteur

    Avatar de danielhagnoul
    Homme Profil pro
    Étudiant perpétuel
    Inscrit en
    Février 2009
    Messages
    6 389
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 73
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant perpétuel
    Secteur : Enseignement

    Informations forums :
    Inscription : Février 2009
    Messages : 6 389
    Points : 22 933
    Points
    22 933
    Billets dans le blog
    125
    Par défaut


    Tout simplement : print(to_str([1, 2, '3', 4, 'FIN'])).

    Blog

    Sans l'analyse et la conception, la programmation est l'art d'ajouter des bogues à un fichier texte vide.
    (Louis Srygley : Without requirements or design, programming is the art of adding bugs to an empty text file.)

  6. #6
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 282
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 282
    Points : 36 769
    Points
    36 769
    Par défaut
    Citation Envoyé par Diegomarck Voir le message
    Mais dans l'interpréteur si je remplace to_str(a) par les différent appel proposé soit par to_str([1, 2, 3]) et les autre aussi, je ne trouve rien. Je ne comprends pas le jeux entre a, tmp et i.
    "dans l'interpréteur" est caractérisé par un prompt ">>>" où le retour de la fonction s'affiche sauf s'il est None:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    >>> def f(n):
    ...     return n
    ...
    >>> f(10)
    10
    >>>
    Maintenant si vous écrivez la fonction dans un fichier script .py et que vous l'exécutez vous n'êtes plus "dans l'interpréteur"... mais à exécuter un script.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  7. #7
    Invité
    Invité(e)
    Par défaut
    Ah oui quand même... Commence par les bases, ça peut servir...
    Ce type d'objet liste=[1,2,3] s'appelle une liste.
    for permet de parcourir tous les éléments d'une liste, d'une chaine de caractère, d'un dictionnaire, d'un tuple, d'un générateur, d'un fichier, d'un set (aucune idée de ce que c'est) et ça doit être tout.
    join permet de prendre chaque élément d'un objet itérable (cf au dessus) et de les joindre ensemble séparé par ce qui se trouve entre " "
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    >>>"e".join("bcd")
    'beced'
    Du coup ça ne fonctionne qu'avec un string on ne peut pas joindre un int par exemple.

  8. #8
    Membre expérimenté
    Avatar de MPython Alaplancha
    Homme Profil pro
    Paysan à 3 francs six sous
    Inscrit en
    Juin 2018
    Messages
    870
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pyrénées Orientales (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Paysan à 3 francs six sous
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Juin 2018
    Messages : 870
    Points : 1 522
    Points
    1 522
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par Diegomarck Voir le message
    Bonjour, je suis un MOOC sur python
    Bonjour,

    Félicitation pour ton choix, ce mooc est une perle. (Ceci dit, regarde aussi l'autre mooc intitulé : Python3: Apprendre à coder, qui propose une approche plus dans la pratique)

    Pour rappel, le site fun mooc dispose de son propre forum. De nombreuses questions y ont déjà été traitées... et profitent à l'ensemble des apprennants .
    Aussi je pense que l'utilisation de cette ressource est à privilègier.

    Bonne suite pour ton apprentissage.
    #Rien de nouveau sous le soleil, tout est vanité comme courir après le vent!
    Developpement pour Android avec Python3/Kivy/Buildozer

Discussions similaires

  1. Réponses: 8
    Dernier message: 29/06/2006, 15h37
  2. Réponses: 3
    Dernier message: 29/04/2006, 13h02
  3. Réponses: 3
    Dernier message: 14/04/2006, 19h36
  4. Utilisation d'une fonction Transact-SQL ds une requête SQL
    Par Fl0ppeur dans le forum Langage SQL
    Réponses: 1
    Dernier message: 21/02/2006, 13h42
  5. Utilisation d'une fonction dans une procedure
    Par MaxiMax dans le forum MS SQL Server
    Réponses: 3
    Dernier message: 09/08/2005, 15h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo