Si tu regardes quelques posts au desssus tu as la solution en fait Si ton problème c'est la validation de l'exercice par l'outil de openclassroom, idem, il faut écrire en tous chiffres le résultat dans le code (comme c'est aussi expliqué quelques réponses plus haut)
Bonjour a tous, je vous écris car j'ai un exercice a faire en specialité NSI. La consigne etant celle ci:
Ecrire une fonction annee() capable d’afficher la liste de tous les jours d’une année imaginaire, laquelle commencerait un Jeudi. Votre script utilisera trois tableaux : une liste des noms de jours de la semaine, une liste des noms des mois et une liste des nombres de jours que comportent chacun des mois.
Une personne pourrais elle m'expliquer comment faire un programme ou m'en donner un ?
Merci
- Edité par RaphaelFlipo1 20 novembre 2021 à 15:20:42
Sais-tu comment faire des listes? Commences par faire les trois listes.
Alors, j'ai fait un petit essai pour m'amuser: semaine = ["dimanche", "lundi", "mardi", "mercredi", "jeudi", "vendredi", "samedi"] samedi et non ça me dit ... C'est un standard que le dimanche est noté le jour 0 et samedi le jour 6. Donc, ton année commencera le jour 4. mois = ["janvier", "fevrier", "mars", "avril", "mai", "juin", "juillet", "aout", "septembre", "octobre", "novembre", "decembre"] jourmois = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31] On ne parle pas d'année bissextile dans l'exercice. Tu auras trois variables: le jour de la semaine, le jour du mois courant, le mois courant. Tu devras faire avancer le jour de la semaine et le jour dans le mois, et tu vérifie si tu ne dépasses pas la limite pour chacun.
- Edité par PierrotLeFou 21 novembre 2021 à 1:55:53
Le Tout est souvent plus grand que la somme de ses parties.
Je t'ai donné l'allure des listes elles-mêmes. Je te donne qquelques indices (sans jeu de mot). Les indices dans les listes commencent à 0, pas 1. Les jours et les mois commencent à 1. Tu devras faire attention à ça. Tu ne devrait avoir besoin que d'une boucle while. Dans la boucle, tu utiliseras le modulo pour le jour de la semaine et un if pour tester si on est passé au mois suivant. Je te laisse le soin de continuer ...
Le Tout est souvent plus grand que la somme de ses parties.
Pas une grosse idée ... As-tu py sur ton ordi? Tu es avec python 3.10 d'après ton chemin dans AppData Si py et python ne sont pas à la même version, tu as peut-être essayé une version antérieure. Si tu peux aller sur cmd, essaies: where py where python py--version python --version pip --version Ça pourra sans doute nous donner une indication. Personnellement, je ne peux pas utiliser numpy sur python 3.10. Je dois l'utiliser sur python 3.9.7 Est-ce la même chose pour toi?
Le Tout est souvent plus grand que la somme de ses parties.
'py--version' n’est pas reconnu en tant que commande interne
ou externe, un programme exécutable ou un fichier de commandes.
C:\Users\Sollix>py --version
Python 3.10.1
C:\Users\Sollix>python --version
Python 3.10.1
C:\Users\Sollix>pip --version
pip 21.3.1 from C:\Users\Sollix\AppData\Local\Programs\Python\Python310\lib\site-packages\pip (python 3.10)
C:\Users\Sollix>
je viens d'installer numpy, effectivement idem ici sur python 3.10 ça ne fonctionne pas
C:\Users\Sollix>python
Python 3.10.1 (tags/v3.10.1:2cd268a, Dec 6 2021, 19:10:37) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'numpy'
>>>
j' essaie de desinstaller python et de le réinstaller avec la version3.9.7 mais ça ne fonctionne pas. malgré plusieurs tentatives cette version de python ne fonctionne pas.
C:\Users\Sollix>py --version
Python 3.9.7
C:\Users\Sollix>python --version
Python est introuvable. ExÚcutez sans argument pour procÚder Ó l
Pour pip --version j'obtiens: pip 21.2.4 from C:\Users\Administrateur\AppData\Local\Programs\Python\Python310\lib\site-packages\pip (python 3.10) Pour py tu as oublié l'espace avant les -- Si tu as absolument besoin de cette fonctionalité et que tu n'utilises rien de particulier à Python 3.10 le mieux serait de désinstaller 3.10 et réinstaller 3.9.7 qui est très stable.
Le Tout est souvent plus grand que la somme de ses parties.
Tu auras besoin des modules: + random pour choisir au hasard les animaux ou les mélanger dans la liste fournie + le module time pour la fonction sleep qui permet d'attendre un certain nombre de secondes Il y a une boucle principale où on rejoue (while) on mélange notre liste d'animaux (shuffle) on en choisit 10 (slicing) on affiche la liste on attend qquelques secondes on affiche la liste avec un animal en moins on attend encore on efface l'écran (se fait en affichant plusieurs lignes vides) on demande à l'utilisateur de donner son nom et son choix on compare le choix avec la liste résiduelle Si on a plusieurs joueurs il faudra un dictionnaire dont la clé est le nom et la valeur est le score Je n'ai pas compris tous les détails du jeu, mais c'est à peu près ça. Est-ce que ça te semble trop compliqqué?
Le Tout est souvent plus grand que la somme de ses parties.
Je suis actuellement dans la partie exercice du cours python : Chargez des données avec Python.
Dans cet exercice il est demandé de lire un fichier pour récupérer des noms et heures puis de les envoyer dans un autre fichier avec les noms et salaire (heure*15)
J'ai réussi a récupérer les valeurs et les renvoyer dans un nouveau fichier, mais j'ai un problème sur l'opération :
Lorsque j'effectue la multiplication la valeur n'est pas multiplié mais répéter 15 fois a la suite. Je ne comprends pas comment multiplié ma valeur par 15 au lieu d'avoir 15 fois ma valeur a suivre.
Voici mon code :
import csv
# Ecrivez le code ci-dessous. Utilisez le package csv !
with open('input.csv') as input_csv:
reader = csv.DictReader(input_csv, delimiter=',')
nom = []
heure = []
for ligne in reader:
print(ligne['nom'] + " a travaille " + ligne['heures_travaillees'] + " heures")
nom.append(ligne['nom'])
heure.append(ligne['heures_travaillees'])
en_tete = ["nom", "salaire"]
salaire = [heures * 15 for heures in heure]
with open('output.csv', 'w') as output_csv:
writer = csv.writer(output_csv, delimiter=',')
writer.writerow(en_tete)
for nom, salaire in zip(nom, salaire):
ligne = [nom, salaire]
writer.writerow(ligne)
workspace $ python3 main.py Pierre Durand a travaille 36 heures Paul Dupont a travaille 41 heures Edouard Gentil a travaille 40 heures ['36', '41', '40']
Le CSV n'est pas un format typé, il renvoie toujours les données sous forme de chaînes de caractères.
C'est à toi de les convertir vers le type souhaité.
Je suis actuellement dans la partie exercice du cours python : Chargez des données avec Python.
Dans cet exercice il est demandé de lire un fichier pour récupérer des noms et heures puis de les envoyer dans un autre fichier avec les noms et salaire (heure*15)
J'ai réussi a récupérer les valeurs et les renvoyer dans un nouveau fichier, mais j'ai un problème sur l'opération :
Lorsque j'effectue la multiplication la valeur n'est pas multiplié mais répéter 15 fois a la suite. Je ne comprends pas comment multiplié ma valeur par 15 au lieu d'avoir 15 fois ma valeur a suivre.
Voici mon code :
import csv
# Ecrivez le code ci-dessous. Utilisez le package csv !
with open('input.csv') as input_csv:
reader = csv.DictReader(input_csv, delimiter=',')
nom = []
heure = []
for ligne in reader:
print(ligne['nom'] + " a travaille " + ligne['heures_travaillees'] + " heures")
nom.append(ligne['nom'])
heure.append(ligne['heures_travaillees'])
en_tete = ["nom", "salaire"]
salaire = [heures * 15 for heures in heure]
with open('output.csv', 'w') as output_csv:
writer = csv.writer(output_csv, delimiter=',')
writer.writerow(en_tete)
for nom, salaire in zip(nom, salaire):
ligne = [nom, salaire]
writer.writerow(ligne)
Merci de votre aide !
Salutation,
Je ne sais pas si tu a trouver la reponse a ton probleme , mais j'ai compris pourquoi sa ne fonctionner pas de ton cote.
tu a juste mal caster dans :
salaire = [heures * 15 for heures in heure]
je l'ai changer en :
salaire = [15*int(heures) for heures in heure]
et il fonctionne , voila le contenu du fichier output.csv :
Le Tout est souvent plus grand que la somme de ses parties.
Le Tout est souvent plus grand que la somme de ses parties.
Le Tout est souvent plus grand que la somme de ses parties.
Le Tout est souvent plus grand que la somme de ses parties.
Le Tout est souvent plus grand que la somme de ses parties.
Priscillia
Le Tout est souvent plus grand que la somme de ses parties.
Priscillia
Le Tout est souvent plus grand que la somme de ses parties.
Le Tout est souvent plus grand que la somme de ses parties.
Le Tout est souvent plus grand que la somme de ses parties.
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
Diplome
Le Tout est souvent plus grand que la somme de ses parties.
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique