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

Un jean-python pour m'aider ?

Alcorak9
Alcorak9
Niveau 5
19 août 2021 à 23:40:23

je prépare mes cours pour l'année pro et l'année dernière on avait un exo que j'avais pas réussi a faire:
donc en gros je dois faire un programme qui transforme:
"bbbooonnnjjjooouuurrr" -> "bonjour"
et je sais pas trop comment m'y prendre si vous avez des pistes !
PS: oui je débute

Alcorak9
Alcorak9
Niveau 5
19 août 2021 à 23:45:43

personne ?

zizidifforme2
zizidifforme2
Niveau 9
19 août 2021 à 23:47:04

J'ai rien compris à ton exo

waist_of_time
waist_of_time
Niveau 12
19 août 2021 à 23:48:46

Boucle où tu compares un indice à son suivant, ternaire sur l'égalité et tu l'ajoutes dans la string finale qu'en cas de différent ?

Mais ça réglerait pas le souci pour les mots a double consonne genre :(

Alcorak9
Alcorak9
Niveau 5
19 août 2021 à 23:51:18

Le 19 août 2021 à 23:47:04 :
J'ai rien compris à ton exo

en gros j'ai un texte où toutes les lettre sont en triples et je dois faire revenir le texte en normal comme dans l'exemple que j'ai dit

Message édité le 19 août 2021 à 23:52:10 par Alcorak9
Alcorak9
Alcorak9
Niveau 5
19 août 2021 à 23:58:20

up ?

backbreakers1
backbreakers1
Niveau 10
30 août 2021 à 00:19:30

Salut, je peux te proposer une réponse:

def single(string):
    return "".join([string[i] for i in range(len(string)) if not(i%3)])
In [10]: single("bbbooonnnjjjooouuurrr")
Out[10]: 'bonjour'

C'est de la bruteforce mais vu que ton mot en entrée a toujours les lettres en 3 fois ça marche.

okhe2000
okhe2000
Niveau 9
30 août 2021 à 00:23:20

str = "bbbjj..."
while any(str.count(c)>1 for c in str):
for c in str:
if str.count(c) > 1:
str = str.replace(c*2, c)
break

abatou
abatou
Niveau 10
30 août 2021 à 00:25:51

En gros un programme qui supprime les doublons ?

Tu utilises la fonction list() qui transforme ta string en list

Puis tu utilises set() qui rend les données d'une list unique

puis tu utilises join() qui te redonne une string

ça prend 3 lignes

Message édité le 30 août 2021 à 00:26:08 par abatou
okhe2000
okhe2000
Niveau 9
30 août 2021 à 00:27:12

def next_repeat(str):
last = str[0]
for pos,char in enumerate(str):
if last == char: return pos-1
last = char
return -1

def del_repeat(str):
while (pos:=next_repeat(str)) != -1:
del str[pos]

okhe2000
okhe2000
Niveau 9
30 août 2021 à 00:27:49

Le 30 août 2021 à 00:27:12 :
def next_repeat(str):
last = str[0]
for pos,char in enumerate(str):
if last == char: return pos-1
last = char
return -1

def del_repeat(str):
while (pos:=next_repeat(str)) != -1:
del str[pos]

et ça tu peut le faite dans toutes les langues

backbreakers1
backbreakers1
Niveau 10
30 août 2021 à 00:27:51

Le 30 août 2021 à 00:25:51 :
En gros un programme qui supprime les doublons ?

Tu utilises la fonction list() qui transforme ta string en list

Puis tu utilises set() qui rend les données d'une list unique

puis tu utilises join() qui te redonne une string

ça prend 3 lignes

Marche pas si une lettre se répète dans le mot de base

kabatso
kabatso
Niveau 10
30 août 2021 à 00:29:41

Le 30 août 2021 à 00:27:51 :

Le 30 août 2021 à 00:25:51 :
En gros un programme qui supprime les doublons ?

Tu utilises la fonction list() qui transforme ta string en list

Puis tu utilises set() qui rend les données d'une list unique

puis tu utilises join() qui te redonne une string

ça prend 3 lignes

Marche pas si une lettre se répète dans le mot de base

Ah oui effectivement

backbreakers1
backbreakers1
Niveau 10
30 août 2021 à 00:30:42

Le 30 août 2021 à 00:29:41 :

Le 30 août 2021 à 00:27:51 :

Le 30 août 2021 à 00:25:51 :
En gros un programme qui supprime les doublons ?

Tu utilises la fonction list() qui transforme ta string en list

Puis tu utilises set() qui rend les données d'une list unique

puis tu utilises join() qui te redonne une string

ça prend 3 lignes

Marche pas si une lettre se répète dans le mot de base

Ah oui effectivement

J'étais parti sur le même principe avec un dict mais quand j'ai vu que ça me donnait bonjur et pas bonjour j'ai abandonné :rire:

Marmaronette
Marmaronette
Niveau 15
30 août 2021 à 00:31:12

Le 30 août 2021 à 00:27:51 :

Le 30 août 2021 à 00:25:51 :
En gros un programme qui supprime les doublons ?

Tu utilises la fonction list() qui transforme ta string en list

Puis tu utilises set() qui rend les données d'une list unique

puis tu utilises join() qui te redonne une string

ça prend 3 lignes

Marche pas si une lettre se répète dans le mot de base

Et le tien marche pas si une lettre se répète plus de 3 fois, le problème est sous spécifié on peut pas y faire grand chose

backbreakers1
backbreakers1
Niveau 10
30 août 2021 à 00:32:34

Le 30 août 2021 à 00:31:12 :

Le 30 août 2021 à 00:27:51 :

Le 30 août 2021 à 00:25:51 :
En gros un programme qui supprime les doublons ?

Tu utilises la fonction list() qui transforme ta string en list

Puis tu utilises set() qui rend les données d'une list unique

puis tu utilises join() qui te redonne une string

ça prend 3 lignes

Marche pas si une lettre se répète dans le mot de base

Et le tien marche pas si une lettre se répète plus de 3 fois, le problème est sous spécifié on peut pas y faire grand chose

L'op a spécifié que les lettres étaient toujours en triple

Marmaronette
Marmaronette
Niveau 15
30 août 2021 à 00:39:31

Le 30 août 2021 à 00:32:34 :

Le 30 août 2021 à 00:31:12 :

Le 30 août 2021 à 00:27:51 :

Le 30 août 2021 à 00:25:51 :
En gros un programme qui supprime les doublons ?

Tu utilises la fonction list() qui transforme ta string en list

Puis tu utilises set() qui rend les données d'une list unique

puis tu utilises join() qui te redonne une string

ça prend 3 lignes

Marche pas si une lettre se répète dans le mot de base

Et le tien marche pas si une lettre se répète plus de 3 fois, le problème est sous spécifié on peut pas y faire grand chose

L'op a spécifié que les lettres étaient toujours en triple

exa exa j'avais pas lu si loin

Azerban
Azerban
Niveau 16
30 août 2021 à 14:39:37
def remove_duplicates(word):
    new_word = ""
    for letter in word:
        if len(new_word) == 0:
            new_word += letter
        elif letter != new_word[-1]:
            new_word += letter
    return new_word

remove_duplicates("bbbbbbbooooonjjjooouuurrr  lllleeesssssss       aaaaaammmmiiiissss   !!!!")

Retourne :

'bonjour les amis !'
Sous forums
  • Religion
La vidéo du moment