phrase = input("Tapez une phrase : ")
compteur = 0
for i in range (len(phrase)):
if phrase[i] in "aàeéèêiîoôuùûyAEIOUY":
compteur += 1
print ("Dans cette phrase, il y a", str(compteur), "voyelles.")
- Edité par chrisblues59 31 juillet 2021 à 0:58:25
phrase = input("Tapez une phrase ") compteur = sum(1 for c in phrase if c in "aàâeéèêëîïoôùûyAÀÂEÉÈÊËÎÏOÔÙÛY") print("Dans cette phrase, il y a", compteur, "voyelles.")
Le Tout est souvent plus grand que la somme de ses parties.
On peut faire mieux (ou pire ...) print("Dans cette phrase, il y a", sum(1 for c in input("Tapez une phrase") if c in "aàâeéèêëiîïoôuùûyAÀÂEÉÈÊËIÎÏOÔUÙÛY"), "voyelles.")
Le Tout est souvent plus grand que la somme de ses parties.
from unicodedata import normalize
VOWELS = frozenset("AEIOUYaeiouy")
def count_vowels(text):
text = normalize("NFD", text).encode("ascii", "ignore").decode()
return sum(char in VOWELS for char in text)
La fonction normalizechange la norm Unicode de la chaîne text. Le but est de décomposer les accents ou autre fioriture non-ascii du caractère ascii associé (quand c'est possible) :
>>> s = "é à ẑ ç"
>>> x = normalize("NFD", s)
>>>
>>> s, x
('é à ẑ ç', 'é à ẑ ç')
>>>
>>> s.encode() # UTF-8
b'\xc3\xa9 \xc3\xa0 \xe1\xba\x91 \xc3\xa7'
>>> x.encode() # Unicode décomposé
b'e\xcc\x81 a\xcc\x80 z\xcc\x82 c\xcc\xa7'
>>>
>>> s.encode("ascii", "ignore")
b' '
>>> x.encode("ascii", "ignore")
b'e a z c'
je débute en programmation. Histoire de mettre en pratique ce que j'ai appris, j'ai réalisé le jeu pierre, papier, ciseaux.
J'ai un doute sur la fonction comparateur et résultat . Je pense que mon idée est assez foireuse
#coding: utf-8
loose = 0
win = 1
def comparator (user,computer):
if user != computer:
if user == "pierre" and computer == "papier" :
return loose
elif user == "papier" and computer == "ciseaux" :
return loose
elif user =="ciseaux" and computer == "pierre" :
return loose
elif user== "papier" and computer == "pierre" :
return win
elif user == "pierre" and computer == "ciseaux":
return win
elif user == "ciseaux" and computer == "papier":
return win
else:
pass
def resultat (match):
if match == 1:
print("Gagné ! vous remportez le tour")
print("")
return win
elif match == 0:
print("Dommage ! Vous perdez le tour")
print("")
return loose
else:
print("Egalité ! Les grands esprits se rencontrent ")
print("")
Il reste beaucoup de chose à améliorer. Je suis preneuse de piste pour m'aider à faire évoluer un peu plus mon code.
:)
#coding: utf-8
"""
Règles du jeux:
1 demander à l'utilisateur.ice son choix
2 le comparer au choix de l'ordi
3 dire qui a gagné
4 ajouter le point au score total
"""
#Importations des modules
import fonctions.interface
import fonctions.aleatoire
import fonctions.check
import fonctions.control
# Initation des variables
collection_coups = ("pierre","papier","ciseaux")
tour = 4
score_user = 0
score_computer = 0
#affichage des règels
fonctions.interface.affichage_rule()
while tour > 0:
fonctions.interface.affichage_score(tour,score_user,score_computer)
fonctions.interface.screen_space()
# faire un controle si jamais l'utilisateur.ice ne rentre pas le bon mot + entrée coup utilisateur.ice
user_choice = fonctions.control.user_control(collection_coups)
#choix du coup aléatoire de l'ordi
coups = fonctions.aleatoire.select_random(collection_coups)
#lancement de la partie
match = fonctions.check.comparator(user_choice,coups)
fonctions.interface.screen_space()
#dire qui gagne et qui perd
result = fonctions.check.resultat(match)
#scores
if match == 1:
score_user += 1
elif match == 0:
score_computer += 1
#decompte des tours
tour -= 1
if tour == 0:
print ("Fin de la partie. ")
print("")
if score_user > score_computer:
print (" Féliciation,vous remportez le match à :",score_user,"contre",score_computer)
elif score_user < score_computer:
print("Dommage, vous perdez le macth à :", score_user,"contre", score_computer)
else:
print("Ni gagnant.e ni perdant.e. ")
print("score final :",score_user, "-", score_computer)
print("merci d'avoir joué à mon petit jeu ")
Ce jeu est classique et les gens le codent d'une façon classique ... Quand l'ordinateur et le joueur sont identiques, tu n'as pas besoin de savoir ce que c'est. On peuttester plusieurs conditions sur une ligne: if (condition1) or (condition2) or (condition3): ça devrait réduire ton code sur un point ...
Le Tout est souvent plus grand que la somme de ses parties.
Traceback (most recent call last):
File "D:/Mes documents/_Python/Travaux personnels/Chi Fou Mi.py", line 62, in <module>
import fonctions.interface
ModuleNotFoundError: No module named 'fonctions'
J'ai voulu voir ton jeu, mais au lancement, j'ai ce message d'erreur.
J'ai voulu voir ton jeu, mais j'ai obtenu ce message d'erreur :
Traceback (most recent call last):
File "D:\Mes documents\_Python\Travaux personnels\Chi Fou Mi.py", line 62, in <module>
import fonctions.interface
ModuleNotFoundError: No module named 'fonctions'
Dans cet exo, je dois crée un fichier output.csv puis le présentez sous un certain format, mon problème est que j'arrive à crée le fichier puis mettre les données demandé à l'intérieur. Cependant je n'arrive pas à multiplier par 15 "heures_travaillees", pour ensuite l'affiché dans output.csv.
Je vous met mon code ci dessous, cela doit être une erreur très bête et je m'en excuse en avance et je vous remercie pour l'aide futur apporté !
Code :
import csv
en_tete = ["nom", "salaire"]
with open('input.csv', 'r') as input_csv, open('output.csv', 'w') as fichier_csv:
reader = csv.DictReader(input_csv, delimiter=',')
writer = csv.DictWriter(fichier_csv, fieldnames=en_tete, delimiter=',')
writer.writeheader()
for ligne in reader:
print(ligne)
#salaire_final = [i * 15 for i in ligne['heures_travaillees']]
writer.writerow({'nom': ligne['nom'], 'salaire': ligne['heures_travaillees']})
#print(salaire_final)
- Edité par Youcef Bouchelleghem 10 août 2021 à 15:49:34
Quelle est l'erreur obtenue ?
À première vue je dirais que c'est une erreur de type puisqu'un fichier CSV ne contient que des champs texte, qu'il faudra convertir vers les types voulus pour les manipuler comme tels.
Le problème est que je n'arrive pas à multiplier les valeurs de 'heures_travaillees' par 15, quand je tente de la multiplier cela me répète juste les valeurs 15 fois. Et je n'arrive pas à trouvé une solution, j'ai tenté différente boucle, ou différente approche.
Je n'obtient aucune erreur sur le terminal, c'est juste personnellement, je n'arrive pas à conclure cet exo.
- Edité par Youcef Bouchelleghem 10 août 2021 à 15:53:44
je suis actuellement le cours"apprenez les bases du langage de python".Je suis confrontée à l'exercice " Enregistrez des données complexes avec des dictionnaires. J'ai bien repondu aux deux premières questions mais le problème se trouve aux deux dernières questions.Voici mon code. Selon la console , mes deux dernières réponses ne sont pas justes. Voici mon code.
# 1) Créez une variable de type dictionnaire appelée "chaussure"
chaussure = {}
""" 2) Ajoutez les éléments suivants dans le dictionnaire :
- clef "taille" avec la valeur 42
- clef "marque" avec la valeur "Nike"
chaussure["marque"]:"Nike"
- clef "race" avec la valeur "berger-allemand"
"""
chaussure["taille"] : 42
chaussure["marque"] : "Nike"
chaussure["race"] : "berger-allemand"
# 3) On s'est trompés ! Supprimez la clef "race" du dictionnaire
del chaussure["race"]
# 4) Récupérez la taille de la chaussure dans une variable appelée "taille"
taille =len(chaussure)
print(f"La taille de la chaussure est {taille}") # 42 normalement !
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.
Un booléen se comporte comme un entier en Python.
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
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
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique
entwanne — @entwanne — Un zeste de Python — La POO en Python — Notions de Python avancées — Les secrets d'un code pythonique