Skip to content

Instantly share code, notes, and snippets.

@GravenilvecTV
Last active June 26, 2024 08:25
Show Gist options
  • Save GravenilvecTV/4238e8fd8a58dfa85df8a68b28e7fdf4 to your computer and use it in GitHub Desktop.
Save GravenilvecTV/4238e8fd8a58dfa85df8a68b28e7fdf4 to your computer and use it in GitHub Desktop.
APPRENDRE LE PYTHON #4 ? LES LISTES
from random import shuffle
# Générateur de phrases
# demander en console une chaine de la forme "mot1/mot2/mot3/mot4"
chained_words = input("Entrer une chaine de la forme mot1/mot2/mot3/mot4")
# transformer cette chaine en liste
words = chained_words.split("/")
# la melanger
shuffle(words)
# recuperer le nombre d'elements
words_len = len(words)
# si le nombre d'élements de cette liste est inferieur à 10
if words_len < 10:
# afficher les deux premiers mots
print(words[0], words[1])
# si le nombre d'éements est superieur ou égal à 10
else:
# afficher les 3 derniers
print(words[words_len - 1], words[words_len - 2], words[words_len - 3])
@ronyk10
Copy link

ronyk10 commented Jul 12, 2023

Bonjour !
Voici mon code :

from random import shuffle

#Demander en console une liste de mot sous une certaine forme :
#split pour le récupérer sous forme de liste
text = input("Entrer une chaîne de la forme mot1/mot2/mot3/mot4/..... ").split("/")

#mélanger la liste grâce à la fonction shuffle du module random
shuffle(text)

#si la liste est inférieur à 10 éléments, afficher les 2 premiers éléments de la liste
if len(text) < 10 :
print(text)
print(text[0:2])

#sinon on affiche les 3 derniers éléments
else:
print(text)
n = 3
res= text[-n:]
print("The last N elements of list are : " + str(res))

@zhango78
Copy link

Salut, voici mon code :

import statistics
import random

def main():
chaine_mot = input("Entrez une chaine de la forme (chaine_mot1/chaine_mot2/chaine_mot3/chaine_mot4...)").split("/")
print(chaine_mot)
random.shuffle(chaine_mot)
print(chaine_mot)
if len(chaine_mot) >= 10:
print(chaine_mot[len(chaine_mot)-1],chaine_mot[len(chaine_mot)-2],chaine_mot[len(chaine_mot)-3])
else:
print(chaine_mot[0],chaine_mot[1])

if name == 'main':
main()

@YaYdeYouTube
Copy link

Hey voila mon code

from random import shuffle

def Main():
    mots = input("Veuillez entrez des mots sous la forme : mot1/mot2/mot3 ect... (séparer par un slash) ").split("/")
    shuffle(mots)
    print(mots)

    if len(mots) < 10:
        print(mots[0], mots[1])

    elif len(mots) >= 10:
        print(mots[0], mots[1], mots[2])


if __name__ == "__main__":
    Main()

@fromMIRADI
Copy link

Voici mon code:

from random import shuffle

mots=input("Veuiilez entrer une chaine des mots en suivant cet exemple (mot1/mot2/mot3/...) ").split("/")

nbre=len(mots)

print("Vous avez ajouté " + str(nbre) + " mots" )

print("Voici la liste des mots avant de mélanger: " + str(mots) )

shuffle(mots)

print("Voici la liste des mots après avoir melangé" + str(mots) )

if nbre < 10:
print("Voici la liste des deux premiers mots: " + str(mots[0:2]))

else:
print("Voici la liste des trois premiers mots: " + str(mots[0:3]))

@Pcommander
Copy link

Bonsoir à tous, voici mon code :

Afin de vérifier mon résultat, je trouvais utile d'affiche la liste une fois mélangée.

# Générateur de phrases
# Demander à l'utilisateur de saisir une phrase de la forme "mot1/mot2/mot3/mot4/..."
sentence = input("Entrez une phrase de la forme (mot1/mot2/mot3/mot4/...) : ")

# Transformer cette phrase en une liste
sentence = sentence.split("/")

# Mélanger les mots de la liste
shuffle(sentence)
print(sentence)

# Si le nombre d'éléments est < à 10 -> afficher les 2 premiers mots
# Si le nombre d'éléments est >= à 10 -> afficher les 3 derniers mots
if len(sentence) < 10:
    print(sentence[0:2])
elif len(sentence) >= 10:
    print(sentence[-3:])

@Isoob
Copy link

Isoob commented Aug 18, 2023

Place de cinema

prix_pop_corn = 7
prix_mineur = 15
prix_majeur = 20
Obedi = int (input("Quel est votre âge : "))
if Obedi < 18 :
pop_corn = input("Souhaitez-vous du pop corn ? (Oui, Non)")
if pop_corn == "Oui" :
price = prix_pop_corn + prix_mineur
else :
price = prix_mineur
else :
pop_corn = input("Souhaitez-vous du pop corn ? (Oui, Non)")
if pop_corn == "Oui" :
price = prix_pop_corn + prix_majeur
else :
price = prix_majeur
print("Vous devez payer " ,price, "euro")

@Soovae
Copy link

Soovae commented Sep 14, 2023

# Generateur de phrases
# demander en console une chaine de la forme mot1/mot2/....
# transformer la chaine en une liste
# la melanger
# si le nb d'element est inf à 10 afficher les 2 premiers mots
# si le nb d'element est sup ou egal à 10 afficher les 3 derniers mots
from random import shuffle

words = input("Entrez plusieurs mots de la forme mot1/mot2/...").split("/")
print("La liste des mots est : {}".format(words))
shuffle(words)
print("La liste mélangée est : {}".format(words))

if len(words) >= 10:
    print("La liste est superieur à 10 donc : {}".format(words[-3:]))
else:
    print("La liste est inferieur à 10 donc : {}".format(words[0:2]))

@ddrfkf
Copy link

ddrfkf commented Oct 1, 2023

Voila le miens, je suis peut être pas très opti mais j'aime bien
from random import shuffle
chain_word = input("Ecrire une chaine de mot sous la forme : mot1/mot2/mot3...").split("/")
print(chain_word)
shuffle(chain_word)
print(chain_word)
lenght = len(chain_word)
print(lenght)
if lenght < 10 :
print(chain_word [0],chain_word [1] )
elif lenght >= lenght:
print(chain_word[-3], chain_word[-2], chain_word[-1])

@ewanzo04
Copy link

ewanzo04 commented Oct 7, 2023

VOICI MA CONTRIBUTION

from random import shuffle
#demander en console une chaine de la forme "mot1/mot2/mot3/mot4"
generateur = input("Entrer une chaine de caractère de la forme(mot1/mot2/mot3/mot4...)").split("/")

#la melanger
shuffle (generateur)
print(generateur)

#recuperation de nombres des élément de la liste
compte = len(generateur)
#de dire si le nombre d'éléments de cette liste est inférieur à 10
#afficher les deux premiers mots
if compte < 10 :
print("{}, {}".format(generateur[0], generateur[1]))

#si le nombres d'élément est superieur ou égale à 10
#afficher les 3 derniers mots
elif compte > 10 :
print(generateur[len(generateur) -3])
print(generateur[len(generateur) -2])
print(generateur[len(generateur) -1])

@AlexisAmand
Copy link

Voici ma version !
Je suis un peu habitué à la programmation, donc je me suis dit qu'il y avait forcément moyen d'intégrer une boucle for dans le else qui lit les 3 derniers éléments de la liste, et j'ai réussi en lisant un peu la doc de l'AFPY. J'imagine que si c'était noté j'aurais quelques points en moins, mais on est entre nous, donc j'imagine que tu ne m'en tiendra pas rigueur.
(je me suis aussi permis de créer un dépôt GitHub où je partage mes essais de réalisation de tes TP.

# Tuto 04 de Graven : générateur de phrases

from random import shuffle

# Demander en console une chaine de la forme mot1/mot2/mot3/mot4
chaine = input("Entrez une chaine de la forme mot1/mot2/mot3/mot4.... : ")

# Transformer cette chaine en une liste
chaineListed = chaine.split("/")
print("Chaine avant de la mélanger : ")
print(chaineListed)

# la mélanger
shuffle(chaineListed)
print("Chaine mélangée : ")
print(chaineListed)

# si le nombre d'éléments de cette liste est inférieur à 10
# -> afficher les deux premiers mots
# si le nombre d'éléments est supérieur ou égal à 10
# -> afficher les 3 derniers mots 

nombreElements = len(chaineListed)

if nombreElements < 10:
    print(chaineListed[0])
    print(chaineListed[1])
else:
    for key in range(nombreElements-3, nombreElements):
        print(chaineListed[key])

@CYDERYA2
Copy link

Voici mon TP
from random import shuffle
text = input("Entrer des mots de la forme (mot1/mot2/mot3/mot4/mot5)").split("/")
print(text)
shuffle(text)
print(text)
text_size = len(text)
if text_size< 10:
print(text[0])
print(text[1])
else:
print(text[len(text) - 1])
print(text[len(text) - 2])

@Nilsblc
Copy link

Nilsblc commented Dec 3, 2023

import random
mot_préféré = input ("Entre les 3 mots que tu préféres en format : mot 1/mot 2/mot3/mot 4/ mot 5 ").split("/")
print (mot_préféré)
random.shuffle(mot_préféré)
print (mot_préféré)
if len(mot_préféré) < 10 :
print(mot_préféré[0:2])
else :
print(mot_préféré[2:])

@Isorin97
Copy link

Je m'en suis sorti comme ça pour ma part :

import random

text = input("Entre une chaine de la forme mot1/mot2/mot3/mot4 etc...").split("/")
print(text)
random.shuffle(text)
print(text)
if len(text) < 10 :
print(text[0:2])
else :
print(text[-3:])

@Apitrini
Copy link

from random import shuffle

liste_de_mots = input("Entrez une liste de mots séparés par des /")
print(liste_de_mots)
mots = liste_de_mots.split('/')
print(mots)
shuffle(mots)
print(mots)

mots_len = len(mots)
print("Il y a", len(mots), "mots dans la liste")

if len(mots)<10 :
print(mots[0], mots[1])

if len(mots)>=10 :
print(mots[mots_len -1], mots[mots_len -2], mots[mots_len -3])

@ldolann
Copy link

ldolann commented Dec 29, 2023

Moi j'aurais changé le dernier print dans la condition si supérieur ou égal à 10 en :

print(list_de_mot[len(list_de_mot) - 3:len(list_de_mot)])

Comment ça c'est plus court et t'es sûr que ça prend que les trois dernières mots de la liste en te basant sur la taille de la liste et en retirant 3 pour faire le début de la fin de la liste 😉👍 Coeur sur vous ❤️👍🤔

@ldolann
Copy link

ldolann commented Dec 29, 2023

17038857579537066873343958440449

Voilà comment j'aurais fait car c'est plus court et plus esthétique 😉👍

@PLTBG
Copy link

PLTBG commented Dec 31, 2023

Voici mon exercice si vous avez des conseils n'hésiter pas from random import shuffle

genp = input("Taper des mot sous la forme (mot1/mot2/mot3......)").split("/")
print(genp)
shuffle(genp)
if len(genp) < 10 :
print(genp[0])
print(genp[1])
elif len(genp) >= 10 :
print(genp[7])
print(genp[8])
print(genp[9])

@Alex9377
Copy link

Voila :

from random import shuffle

text = input("Entrer une chaine de la forme (mot1/mot2/mot3/mot4/mot5/etc...): ").split("/")
print(text)
shuffle(text)
print(text)

if len(text)<10:
print(text[0],text[1])
else:
print(text[len(text)-3], text[len(text)-2],text[len(text)-1])

@HrMoussa
Copy link

gen_test = input("enter your strings: str1/str2/str3........ ").split("/")
print(gen_test)
import random
random.shuffle(gen_test)
print(gen_test)
if len(gen_test) < 10:
print(gen_test[:2])
elif len(gen_test) >= 10:
print(gen_test[-4:-1])

@Amadoubire
Copy link

#Generateur de phrase
#demander en console une chaine de la forme "mots1/mots2/mots3..."
#melanger ses mots
#si le nombre d'élément de cette liste est inférieur à 10
#--> afficher les deux premiers mots

si le nombre d'élément est superieur ou égale à 10

#--> afficher les 3 derniers
import random

Entree= input("entrée votre mots de la forme (mots1/mots2/mots3)").split("/")
melanger=random.shuffle(Entree)
print(Entree)
element=len(Entree)
print(element)
if element<10:
print (Entree[0],Entree[1])
else:
print(Entree[element-1], Entree[element-2], Entree[element-3])

@Amadoubire
Copy link

import random

Demander en console une chaine de la forme "mot1/mot2/mot3..."

entree = input("Entrez vos mots séparés par des '/': ").split("/")

Mélanger les mots

random.shuffle(entree)

Afficher la liste mélangée et le nombre d'éléments

print(entree)
nombre_elements = len(entree)
print("Nombre d'éléments:", nombre_elements)

Afficher les mots selon le nombre d'éléments

if nombre_elements < 10:
# Vérifier s'il y a au moins deux éléments pour éviter une erreur d'indexation
if nombre_elements >= 2:
print(entree[0], entree[1])
elif nombre_elements == 1:
print(entree[0])
else:
print("La liste est vide.")
else:
# Afficher les 3 derniers mots
print(entree[-3], entree[-2], entree[-1])

@BrumCmoua
Copy link

Personne n'a fait comme moi pour les deux premiers et les trois derniers mots...

Capture

@noobies123
Copy link

from random import shuffle

texte = input("entrer des mots(mot1/mot2/mot3/mot4/...)").split("/")
print(texte)

shuffle(texte)
print(texte)

if len(texte) < 10:
print([0,1])
else:
print(texte[len(texte) - 1],texte[len(texte) - 2],texte[len(texte) - 3])

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment