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 :

fonction remplissage (n)


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2023
    Messages : 3
    Par défaut fonction remplissage (n)
    Bonjour a tous, mon prof demande de faire un travail sur python mais je n'arrive pas à faire l'intitulé suivant : écrire une fonction remplissage(n) qui renvoie un tableau t contenant n nombres entiers aléatoires et < 1000.
    Je suis débutant en la matière je galère beaucoup merci d avance

  2. #2
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut
    Bonjour.

    Montrez votre code, que l'on puisse voir ce que vous avez essayé.

  3. #3
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2023
    Messages : 3
    Par défaut reponse fonction remplissage
    Voici ce que j'ai essayé de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    import random
     
    tableau = []
    for i in range(10):
        random.randint(0,1000)
        tableau.append(i)
     
    print(tableau)
    J'ai 2 problèmes ici, je ne sais pas si j'utilise la bonne manière pour définir un tableau, je crois que je fais seulement une liste ici.

    Et j'obtiens comme résultat [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] alors que je veux des nombres aléatoires et non des nombres qui se suivent

  4. #4
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut
    Tableau, liste, c'est pareil.

    Vous pouvez mettre votre code entre balises [CODE] SVP ? Regardez la vidéo dans ma signature

    Dans votre code, i est la variable qui parcoure un range compris entre 0 et 9 et c'est cette valeur que vous stockez dans votre liste.

    A côté, vous générez 10 fois un nombre aléatoire mais n'en faites rien.

    Et que devez-vous stocker dans votre liste ?

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 752
    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 752
    Par défaut
    Citation Envoyé par antoinesSSSSS Voir le message
    écrire une fonction remplissage(n) qui renvoie un tableau t contenant n nombres entiers aléatoires et < 1000.
    Je suis débutant en la matière je galère beaucoup merci d avance
    Une fonction se fabrique avec un "def" et ce qu'elle renvoie se fait via "return". Si votre code ne contient pas ça, c'est que vous n'êtes même pas capable de lire l'énoncé et que vous devez ouvrir un tuto. pour apprendre les termes techniques de base.

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

  6. #6
    Candidat au Club
    Homme Profil pro
    Lycéen
    Inscrit en
    Avril 2023
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Lycéen
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2023
    Messages : 3
    Par défaut
    Citation Envoyé par Arioch Voir le message
    Tableau, liste, c'est pareil.

    Vous pouvez mettre votre code entre balises [CODE] SVP ? Regardez la vidéo dans ma signature

    Dans votre code, i est la variable qui parcoure un range compris entre 0 et 9 et c'est cette valeur que vous stockez dans votre liste.

    A côté, vous générez 10 fois un nombre aléatoire mais n'en faites rien.

    Et que devez-vous stocker dans votre liste ?
    il faut que je remplisse cette liste de nombres aléatoires qui sont inférieurs a 1000, pour en faire une fonction et l'exploiter pour un programme

  7. #7
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut
    Votre logique de code est presque bonne, si tant est que ce n'est pas le range qui doit alimenter votre liste mais les nombres aléatoires générés.

    Après, pour en faire une fonction, rien de bien compliqué.

    M'enfin, tout dépend de ce que vous avez déjà lu sur le langage.

  8. #8
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 752
    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 752
    Par défaut
    Citation Envoyé par antoinesSSSSS Voir le message
    il faut que je remplisse cette liste de nombres aléatoires qui sont inférieurs a 1000, pour en faire une fonction et l'exploiter pour un programme
    Vous ne pourrez pas faire d'une liste une fonction.
    Programmer demande d'être plus rigoureux que lorsqu'on s'exprime en français....
    Ce qui commence par essayer de se relire pour s'assurer qu'on raconte bien ce qu'on veut dire.
    Comme on relit son code pour s'assurer que le nombre aléatoire retourné par random va bien dans la liste.

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

  9. #9
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 837
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 837
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par antoinesSSSSS Voir le message
    écrire une fonction remplissage(n) qui renvoie un tableau t contenant n nombres entiers aléatoires et < 1000.
    ...
    Voici ce que j'ai essayé de faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    import random
     
    tableau = []
    for i in range(10):
        random.randint(0,1000)
        tableau.append(i)
     
    print(tableau)
    Elle est où la fonction "remplissage()"? Les premiers mots de ton énoncé sont clairs, pourquoi alors tu ne suis pas ses directives?

    Citation Envoyé par antoinesSSSSS Voir le message
    J'ai 2 problèmes ici, je ne sais pas si j'utilise la bonne manière pour définir un tableau, je crois que je fais seulement une liste ici.
    Ben faut te mettre un peu aux tutos qui expliquent les tableaux et qui expliquent que dans Python, on les appelle "liste"

    Citation Envoyé par antoinesSSSSS Voir le message
    Et j'obtiens comme résultat [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] alors que je veux des nombres aléatoires et non des nombres qui se suivent
    Ben au lieu de stocker "i" dans ton tableau, stockes-y le nombre aléatoire que tu as tiré (en plus sans en faire quoi que ce soit)...
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  10. #10
    Membre actif
    Homme Profil pro
    Amateur débutant
    Inscrit en
    Décembre 2019
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Amateur débutant

    Informations forums :
    Inscription : Décembre 2019
    Messages : 88
    Par défaut
    Bonjour Antoine,

    Si votre énoncé dit de faire un "tableau" et que, lors de la correction, c'est une liste qui est utilisée.. alors Oui, c'est bien qu'il y avait un confusion sur les termes.
    Car un truc comme : l = [1, 2, 4] s'appelle une liste.

    Mais si l'énoncé s'attend à ce que vous placiez vraiment un "tableau", c'est peut être qu'il vous faut utiliser une bibliothèque qui s'appelle numpy.
    En effet, numpy permet des faire des objets dont le type est "array" (tableau en anglais).

    Cela dit, j'ai déjà entendu "tableau" pour décrire une "liste de listes" comme par exemple : t = [[1,2,3], [4,5,6]] ..mais cela reste des listes enchâssées/imbriquées (nested) dans une liste (et ça ne serait pas utile ici).

    Voici comment je ferai l'exo (avec commentaires qui, j'espère, vous seront utile et clair).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    import random
    import numpy as np    # on importe généralement numpy en lui donnant le "diminutif " np 
     
     
    def remplissage(n):                        # on defini la fonction
      tableau = np.array([], dtype = "int")    # on crée le tableau numpy vide et on déclare le type des valeurs qui y seront stockées..ici des entiers donc dtype = "int"
      for i in range(10):                      # création de la boucle qui fournira 10 itérations
        rand_val = random.randint(1, 999)      # la methode randint de random retourne des entiers compris dans les bornes.. bornes incluses donc ici 999 car on veut que ce soit <1000
        tableau = np.append(tableau, rand_val) # on refais le tableau en y ajoutant la nouvelle valeur à chaque itération
      return tableau                           # la fonction renverra ce tableau une fois rempli
     
     
    tableau_rempli = remplissage(10)    # on appelle la fonction et on stocke sont retour (le tableau rempli) dans la variable tableau_rempli
    print(tableau_rempli)               # on print le tableau
    Bon courage pour votre apprentissage.
    codez, lisez, testez et ce sera de plus en plus "facile".
    Jma

  11. #11
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 837
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 837
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Jma06 Voir le message
    Mais si l'énoncé s'attend à ce que vous placiez vraiment un "tableau", c'est peut être qu'il vous faut utiliser une bibliothèque qui s'appelle numpy.
    En effet, numpy permet des faire des objets dont le type est "array" (tableau en anglais).
    Mais qu'est-ce que tu viens l'embrouiller? Il en est au début de Python et tu lui mets direct du numpy!!!
    En programmation, le tableau est une notion qui englobe un concept d'items séquentiellement rangés et directement accessibles, et cette notion se découpe, dans Python, en "listes" (tableaux modifiables) et "tuples" (tableaux non modifiables). Donc l'énoncé parle de "tableau" au sens générique et c'est tout. Charge à l'élève de traduire, dans son code, cette notion "tableau" en "liste" ou "tuple" selon le cas.

    Citation Envoyé par Jma06 Voir le message
    mais cela reste des listes enchâssées/imbriquées (nested) dans une liste (et ça ne serait pas utile ici).
    Tu m'étonnes...

    Citation Envoyé par Jma06 Voir le message
    Voici comment je ferai l'exo (avec commentaires qui, j'espère, vous seront utile et clair).
    Ben oui. T'as qu'à lui écrire la solution tant que tu y es. Ah ben c'est ce que tu as fait. Tu as lu les règles de ce forum ???
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  12. #12
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 323
    Par défaut
    Bonjour

    +1 Tableau est un terme générique !!!


    Citation Envoyé par Jma06 Voir le message
    Mais si l'énoncé s'attend à ce que vous placiez vraiment un "tableau", c'est peut être qu'il vous faut utiliser une bibliothèque
    Ici nous sommes hors du cours de ce débutant. Et de plus, existe en python le type "tableau" (certainement pas demandé dans l'énoncé) alors pourquoi chercher ailleurs :
    (array.)array est un tableau python mais avec un seul type d'éléments (contrairement aux listes et tuples). Ils ont le même ancêtre "Sequence" que les listes et tuples, mais surtout dans la hiérarchie objet de python, ils sont frère de "str".

  13. #13
    Membre actif
    Homme Profil pro
    Amateur débutant
    Inscrit en
    Décembre 2019
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Amateur débutant

    Informations forums :
    Inscription : Décembre 2019
    Messages : 88
    Par défaut
    Bonjour,

    @Svear
    Vous êtes quand même vachement nerveux quand vous parlez à des personnes qui cherchent juste à bien faire... ne trouvez-vous pas?

    Pensez vous être légitime pour parler de la sorte à des personnes qui ne s'adressent pas directement à vous (et qui cherchent juste à aider avec leurs lectures de ce qu'elles pensaient être le problème )?
    D'où les règles du forum indiquent-elles qu'il ne faut pas donner d'exemple de code utilisant numpy là où l'idée était question de le faire avec des listes?
    Que viennent faire vos jugements de valeurs sur cette place publique ?
    Qui pensez vous être, pour décider de qui peut dire quoi ici?
    Pourtant, vous semblez passer beaucoup de temps pour structurer votre posts, reprendre les dires en citations, les commenter... pour finalement critiquer sans discernement.
    Et si vous utilisez toute cette énergie, ce savoir et ce temps pour répondre simplement aux questions posées (sans juger qui la pause, pourquoi, est ce qu'il a cherché avant, pourquoi il préfère désormais chatGPT à ce forum....)?


    @Antoine,
    j'espère que vous sortirez grandi de votre expérience sur ce forum.
    En tous cas, je pense qu'avec les conseils des uns et mon exemple "visiblement hors sujet" avec numpy, vous aurez pu comprendre comment faire votre exo

  14. #14
    Expert confirmé Avatar de papajoker
    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2013
    Messages
    2 323
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nièvre (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2013
    Messages : 2 323
    Par défaut
    Citation Envoyé par Jma06 Voir le message
    D'où les règles du forum indiquent-elles qu'il ne faut pas donner d'exemple de code utilisant numpy
    Donc en fait, nous n'interprétons pas du tout de la même façon les règles…

    1)
    Citation Envoyé par regle;
    En aucun cas, nous ne ferons le travail à votre place.
    Dans ton "exemple", tu fais justement le travail de l'étudiant. Tu ne donnes pas un exemple mais bien une solution.

    2) ici, il ne s'agit pas de numpy en particulier, ni des règles. Mais, je répète, je trouve cela très particulier de donner une solution numpy alors qu'il est visible que le demandeur ne connait pas python (si un demandeur ne sait pas faire un print, je ne vais pas lui proposer une solution clé en main avec un framework)

    Citation Envoyé par Jma06 Voir le message
    qui cherchent juste à bien faire
    Je n'ai aucun doute, mais il faut que tu connaisses les règles. Pour ceux qui sont en phase d'apprentissage, nous aidons en mettant sur la voie, en expliquant des concepts, pas en balançant du code fini en guise de réponse. Une fois le problème résolu (bien compris par le demandeur), en marge de la demande, alors oui, nous pouvons "pondre du code" afin de trouver le meilleur algorithme (numpy est le bienvenu).

  15. #15
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 837
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 837
    Billets dans le blog
    1
    Par défaut
    Citation Envoyé par Jma06 Voir le message
    Vous êtes quand même vachement nerveux quand vous parlez à des personnes qui cherchent juste à bien faire... ne trouvez-vous pas?
    Non.

    Citation Envoyé par Jma06 Voir le message
    Pensez vous être légitime pour parler de la sorte à des personnes qui ne s'adressent pas directement à vous (et qui cherchent juste à aider avec leurs lectures de ce qu'elles pensaient être le problème )?
    Oui.

    Citation Envoyé par Jma06 Voir le message
    D'où les règles du forum indiquent-elles qu'il ne faut pas donner d'exemple de code utilisant numpy là où l'idée était question de le faire avec des listes?
    Exemples de code oui. Solution directe de l'exercice demandé non. Parce que ne viens pas me dire que ton "exemple" n'est pas solution!!! Je te laisse rebondir à ce sujet sur la réponse plus complète de papajoker qui a posté pendant que j'écrivais.

    Citation Envoyé par Jma06 Voir le message
    Que viennent faire vos jugements de valeurs sur cette place publique ?
    Et hop, arabesque latérale. De quels jugements et quelles valeurs s'agit-il? Accessoirement une place publique est quand-même faite pour exposer des jugements et valeurs. Sinon où pourrions-nous les exposer???

    Citation Envoyé par Jma06 Voir le message
    Qui pensez vous être, pour décider de qui peut dire quoi ici?
    Peut-être que mon profil (nb de posts, points, codes sources) peuvent te donner un indice sur cette question. Ceci dit, à ton propos je n'ai rien décidé, juste commenté.

    Citation Envoyé par Jma06 Voir le message
    Pourtant, vous semblez passer beaucoup de temps pour structurer votre posts, reprendre les dires en citations, les commenter... pour finalement critiquer sans discernement.
    Ah si, avec discernement. Avec justement assez de discernement, forgé par des années d'enseignement, pour discerner un exercice de niveau débutant, exercice fait pour apprendre à manipuler les tableaux (oups, les "listes") dans des boucles. Parce que disons-le franchement, une fonction qui remplit un tableau avec des valeurs aléatoires ça a peu d'intérêt. Et si Antoine avait le niveau pour partir dans numpy, alors il aurait le niveau pour faire cet exo et n'aurait pas produit ce qu'il nous a montré.

    Citation Envoyé par Jma06 Voir le message
    Et si vous utilisez toute cette énergie, ce savoir et ce temps pour répondre simplement aux questions posées (sans juger qui la pause, pourquoi, est ce qu'il a cherché avant, pourquoi il préfère désormais chatGPT à ce forum....)?
    Alors
    • "est-ce qu'il a cherché avant" a été posée par Arioch.
    • "juger qui la pose": j'aimerais bien que tu me cites l'endroit où j'ai jugé Antoine
    • "répondre aux questions posées": je n'ai vu, dans la prose d'Antoine, que deux questions: la première où il s'interroge au sujet de "listes" et la seconde où il ne comprend pas pourquoi son tableau contient des nombres croissants. A la première je lui ai expliqué le pourquoi de ce mot, et à la seconde je lui ai donné un indice sur l'élément à changer (indice parce que sinon c'était donner la solution)
    • "pourquoi il préfère ChatGPT": je ne vois pas trop d'où tu sors cette assertion . Mais si ChatGPT est capable de lui sortir son exo je serai assez admiratif


    Citation Envoyé par Jma06 Voir le message
    En tous cas, je pense qu'avec les conseils des uns et mon exemple "visiblement hors sujet" avec numpy, vous aurez pu comprendre comment faire votre exo
    Ben oui, puisqu'il n'a qu'à plus qu'à le recopier, le donner à son prof et se prendre une prune car le prof verra bien que ça ne peut pas être de lui. Ne parlons pas du ressenti des autres étudiants quand ils verront que ce forum prône la tricherie ; ni de l'exemple donné à Antoine qui pensera, à tort, qu'il n'a pas besoin de bosser, qu'il y aura toujours des vaniteux sur les forums pour leur faire leur job pendant qu'ils vont à la plage.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  16. #16
    Membre actif
    Homme Profil pro
    Amateur débutant
    Inscrit en
    Décembre 2019
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Amateur débutant

    Informations forums :
    Inscription : Décembre 2019
    Messages : 88
    Par défaut
    Ok, je vois, je crois comprendre ..

    De mon point de vue, il y a ici semble-t-il, une forme d'entre-soi (qui s'est installé avec le temps et qui semble aujourd'hui y être cautionnée).
    C'est visiblement mon tour d'y être confronté.. je m'autorise donc ce dernier droit de réponse.

    Si tout le monde trouve ca normal d'être pris de haut, d'être l'objet de procès d'intentions et de d'avoir peur du ton qui sera pris par certaines divas de ce forum.. alors allez y continuez ainsi, jugez.. il en restera toujours quelque chose.

    Sous couvert d'hyper compétence académique en programmation, on doit régulièrement subir ici l'incompétence en intelligence interpersonnelle de certains.
    Il en est qui parlent mal aux internautes venus chercher conseil (simplement un conseil, un bout de code et pas une évaluation de la qualité ou de la pertinence de leur question ou réponses).
    Les gens sont par trop souvent critiqués, rabroué et ce parfois à la limite de l'humiliation publique.

    Ce cacher derrière un règlement, sa lecture mandataire ou son interprétation, ne changera rien aux ressentis des gens qui sont venu chercher de l'aide et se font ainsi secouer.

    Mon propos final sera (avant déconnection définitive) :
    Essayez de retrouver l'âme de ce forum qui consiste à répondre simplement à une question sans essayer d'évaluer les intentions, le niveau, ou les recherches effectuées/ou pas ..de celui qui pose cette question.

    Si la question vous défrise, défoulez vous ailleurs et ne répondez pas.
    C'est aussi simple que ça.

    A bon entendeur salut

  17. #17
    Membre Expert
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2003
    Messages
    1 603
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2003
    Messages : 1 603
    Par défaut
    Je vais apporter une goutte d'eau pour le moulin

    Citation Envoyé par Jma06 Voir le message
    Ce cacher derrière un règlement, sa lecture mandataire ou son interprétation, ne changera rien aux ressentis des gens qui sont venu chercher de l'aide et se font ainsi secouer.
    Un règlement est un règlement. Et celui du forum précise, entre autres, la chose suivante : Nous ne sommes pas là pour faire vos exercices.

    J'avoue avoir enfreint cette règle plus d'une fois, que ce soit ici ou dans la rubrique consacrée à Perl autrefois.

    Et je n'en suis pas fier.

    Tout simplement parce qu'aider le demandeur d'un problème en lui livrant la solution clé en mains n'est pas l'idéal. Je côtoie des apprentis développeurs Python qui avancent, non pas en suivant les tutos ni en faisant le moindre exercice, mais juste en cherchant une solution toute faite sur des sites comme StackOverflow. Qu'en retiennent-ils ? Strictement rien. Et ils sont incapables d'expliquer ce que fait leur code. Quant à le corriger, l'adapter ou le faire évoluer... Et je ne parle même pas de ChaGLoufé (et ça pue!). Là aussi, des collègues s'adonnent à employer cette chose et quand on leur demande une couverture supérieure à 90 % de "leur" code en tests, ça pleurniche au fond du bois.

    Mieux vaut un bon tuto, que l'on lit sérieusement et pas en le survolant, que l'on teste à travers des exercices qu'une soluce et de revenir deux jours plus tard pour obtenir la solution du problème suivant.

    C'est vrai que des interlocuteurs comme Wiztricks ou @Svear peuvent paraître secs quand on lit leurs réponses. Ca peut rebuter (ça me l'a déjà fait).

    Sauf que ce sont d'excellents interlocuteurs (d'autres aussi hein !). Plutôt que de livrer des réponses toutes faites, ils préfèrent aiguiller le demandeur, lui mettre le nez dans le caca pour parler crument (et quand c'est nécessaire).

    Quand je vois le nombre de personnes arrivant ici et calquées sous le même moule : j'ai un soucis, je balance mon code en m'en fichant de l'indentation (ou pire : un screenshot du code, pour que personne ne puisse le tester autrement qu'en se le retapant à la main) OU encore : j'ai un soucis mais je balance surtout pas mon code parce que je n'ai tout simplement rien foutu et je viens juste chercher la réponse. Pour des habitués du forum, pour qui aider autrui est un plaisir, ça ne confine pas à la bonhommie bon enfant.

    Je viens d'une ère que je ne pensais pas si lointaine où utiliser son moteur de recherche préféré quand on rencontre un problème était un bon point de départ.

    Il semble que cette époque soit révolue, quand je vois le nombre de topics créés ici (ou ailleurs) et où clairement le demandeur n'a strictement pas pris la peine de rechercher sur le net.

    C'est difficile de rester poli et d'arborer une courtoisie protocolaire

  18. #18
    Membre Expert
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    721
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2006
    Messages : 721
    Par défaut
    Moi non je n'ai pas compris pourquoi on sortait l'artillerie lourde.
    Numpy c'est comme un bulldozer pour écraser une mouche .
    Mais surtout ce n'est absolument pas nécessaire pour l'exercice qui est demandé. Il n'apporte strictement rien ici.
    En plus de cela, ce n'est pas fourni en standard avec Python, ça s'installe séparément, donc à moins que ce package ne soit déjà présent sur la machine ce n'est certainement pas une solution prête à l'emploi qui est fournie.
    Accessoirement, ce qui est renvoyé n'est pas un tableau/liste: c'est une structure propre à Numpy: numpy.ndarray avec des méthodes très différentes.

    Je pense que notre ami est sur la bonne voie, les ingrédients sont là mais il reste à approfondir les fondamentaux:
    • comment écrire une fonction, et renvoyer un résultat
    • ne pas perdre de vue l'énoncé: la quantité de nombres à retourner n'est pas figée à 10, elle est variable puisque c'est un argument de la fonction.

    Et si les supports de cours ne sont pas suffisamment complets il n'est pas interdit de se documenter, en commençant par la documentation officielle.

    Je pense que c'est normal qu'un débutant soit un peu dérouté par le vocabulaire utilisé, on utilise de façon interchangeable tableau et liste, ici ça veut manifestement dire la même chose, mais les structures de données ne sont pas les mêmes dans d'autres langages et il faut faire attention, car on ne parle pas toujours de la même chose.
    D'ailleurs en Python, il existe la notion de tableau (array) avec son module dédié, c'est quelque chose de distinct des lists.
    Un petit effort de pédagogie aurait été le bienvenu à mon avis.

    Bon courage.

  19. #19
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    13 200
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 13 200
    Billets dans le blog
    47
    Par défaut
    Bonjour,

    Citation Envoyé par Jma06 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    import random
    import numpy as np    # on importe généralement numpy en lui donnant le "diminutif " np 
     
     
    def remplissage(n):                        # on defini la fonction
      tableau = np.array([], dtype = "int")    # on crée le tableau numpy vide et on déclare le type des valeurs qui y seront stockées..ici des entiers donc dtype = "int"
      for i in range(10):                      # création de la boucle qui fournira 10 itérations
        rand_val = random.randint(1, 999)      # la methode randint de random retourne des entiers compris dans les bornes.. bornes incluses donc ici 999 car on veut que ce soit <1000
        tableau = np.append(tableau, rand_val) # on refais le tableau en y ajoutant la nouvelle valeur à chaque itération
      return tableau                           # la fonction renverra ce tableau une fois rempli
     
     
    tableau_rempli = remplissage(10)    # on appelle la fonction et on stocke sont retour (le tableau rempli) dans la variable tableau_rempli
    print(tableau_rempli)               # on print le tableau
    Ici, c'est un peu dommage de faire un append dans une boucle for sur un tableau numpy :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> import numpy as np
    >>> np.random.randint(low=1, high=1000, size=10)
    array([798, 957, 469, 656, 881,  17, 182, 222,  46, 802])
    >>>

Discussions similaires

  1. Problème fonction remplissage matrice
    Par charlotte000000 dans le forum Débuter
    Réponses: 4
    Dernier message: 20/12/2020, 14h31
  2. [XL-2003] couleur A1 en fonction remplissage autres cellules
    Par lamare14 dans le forum Excel
    Réponses: 3
    Dernier message: 17/04/2009, 14h40
  3. Remplissage d'un champs en fonction d'un autre
    Par arno974 dans le forum Access
    Réponses: 14
    Dernier message: 18/12/2006, 21h15
  4. Réponses: 2
    Dernier message: 29/09/2006, 16h40
  5. Réponses: 3
    Dernier message: 14/06/2006, 16h36

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