CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

[Python] Réaliser une bulle avec un texte à afficher

Ryuma2112
Ryuma2112
Niveau 2
18 octobre 2016 à 12:02:46

Bonjour,
Voilà j'ai un problème de programmation sur Python 3.5, je viens de commencer à programmer sur ce logiciel.
J'ai un travail à réaliser qui consiste à programmer une fonction qui renvoie une bulle avec du texte à définir soi-même à l'intérieur et d'y faire correspondre les dimensions de la bulle

--------------
| Hello world! |
| |
| How are you? |
--------------
\
\
C'est une bulle de ce type.
Mais je ne comprend pas comment réaliser la fonction, car je n'arrive pas à faire afficher le texte dans la bulle
Voilà mon début de programme:
def longueur_max(x,y,z):
"""
calcule la longueur maximale des chaînes de caractères d’une liste non vide
"""
if len(x)>len(y) and len(x)>len(z):
return len(x)
elif len(y)>len(x) and len(y)>len(z):
return len(y)
else: return len(z)

def tux_say(x,y,z):
"""
Imprime dans une bulle les chaînes de caractères de la liste.
La largeur de la bulle doit s’adapter à la largeur de la plus grande
des chaînes de la liste.
"""
if longueur_max(x,y,z)!=0:
Bulle=(longueur_max(texte)+2)*"-""\n |" x "|\n |" y "|\n |" z "|\n" (longueur_max(texte)+2)*"-"

J'espère qu'on pourra m'aider
Merci d'avance

shmemory
shmemory
Niveau 8
18 octobre 2016 à 15:39:13

La fonction max existe déja

Sinon tu calcule le nombre d'espaces manquants pour arriver en fin de ligne, et tu les print :oui:

def bulle(a,b,c):

	max_s = max ( len(mots[0]), len(mots[1]), len(mots[2]) )
	print( " " + (max_s+2) * "_" )
	for phrase in [a,b,c]:
		print( "|", phrase, (max_s-len(phrase))*" " + "|")
	print( "|" + (2+max_s) * "_" + "|")
	print( " " * (max_s//2) + "/" )

mots = ["une phrase", "une deuxieme plus longue", "une troisieme"]


bulle(mots[0], mots[1], mots[2])

:(


 __________________________

| une phrase               |
| une deuxieme plus longue |
| une troisieme            |
|__________________________|
            /

:(

Message édité le 18 octobre 2016 à 15:39:29 par shmemory
Ryuma2112
Ryuma2112
Niveau 2
18 octobre 2016 à 16:32:21

D'accord, en faites je ne connaissais pas la fonction 'for in' c'est pour cela que je n'arrivé pas à incrémenter le texte
Merci bcp

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de sites web
  • Création de Jeux
  • Linux
  • Programmation
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment