Nombre de mots

Dans cet exercice, on considère des phrases composées de mots.

  • On appelle « mot » une chaîne de caractères composée avec des caractères choisis parmi les 26 lettres minuscules ou majuscules de l'alphabet,

  • On appelle phrase une chaîne de caractères :

    • composée avec un ou plusieurs mots séparés entre eux par un seul caractère espace ' ',
    • se finissant :
      • soit par un point '.' qui est alors collé au dernier mot,
      • soit par un point d'exclamation '!' ou d'interrogation '?' qui est alors séparé du dernier mot par un seul caractère espace ' '.

Voici deux exemples de phrases :

  • 'Cet exercice est simple.'
  • 'Le point d exclamation est separe !'

Après avoir remarqué le lien entre le nombre de mots et le nombres de caractères espace dans une phrase, programmer une fonction nombre_de_mots qui prend en paramètre une phrase et renvoie le nombre de mots présents dans cette phrase.

Exemples

🐍 Console Python
>>> nombre_de_mots('Cet exercice est simple.')
4
>>> nombre_de_mots('Le point d exclamation est séparé !')
6
>>> nombre_de_mots('Combien de mots y a t il dans cette phrase ?')
10
>>> nombre_de_mots('Fin.')
1
Compléter la fonction nombre_de_mots

###(Dés-)Active le code après la ligne # Tests (insensible à la casse)
(Ctrl+I)
Entrer ou sortir du mode "deux colonnes"
(Ctrl+Clic pour inverser les colonnes)
Entrer ou sortir du mode "plein écran"
Tronquer ou non le feedback dans les terminaux (sortie standard & stacktrace / relancer le code pour appliquer)
Si activé, le texte copié dans le terminal est joint sur une seule ligne avant d'être copié dans le presse-papier
Évaluations restantes : 5/5

.1280130ldy14k/weibmc_:35aPr+ =9of.gt2;6sSh)(punv050d0k0E0t0l0c0I0x0o0c0t0I0I0y010E0l0N010406050I0O0n0n0t0v0e040J0A0c0O0+0A0P050i0=0@0_0{0:0N04051b141e0i1b0:0d0l0Q0Z0#0%0)0K0l0D0K0c1s0K0E0.050U0m0c0k1n0$0(011r1t1v1t0E1B1D1z0E0v1c0E0K0Z0~0I0N0t0P0)0F011F1p010B0W0k0P0t0n0k1z1Y1!1)1H1,1D1/1;0.0a0x0u0v0A0N0A0I0l110P0x0S1W0v0v0k0o29141@0P1c0i1U2m1R1T1S1A0d1_0)1v0P1.261z1k1m0!1G2w0l2y0P0A2C1z0N2f1c2k2m2Q0;1Z2a2E1*2J0v0^0c0.0f2j2U0/2T1^2W1H2Y2!0.0F2(1!2*2k2v012/0t2#040r2?2l0:2_2-0)2|2~0g312^2U2`370.0s3a333c352{0A2Z2}0.0H3a1f2O142C2p0d1T2u3k0o2K1=1c3v1d3t2S152)053B0S2P3j1o1H0h0.0S0B3a0x2+2V3Q360B0.2J0n0m2f0p0S0p0n0A0E0I3r343!010-040M3?3P2F2{0.0N0K0v0$0k3}2,3^3`0L0q3h0x4e3X3@3 0P3%0m3.3:3=3J2@4g3~1*0A0.0y3W3Y2`0n0l0.0b4d4f4y3k3S040B3m4x4h2X0.0o0_0t2h0k2f4M4s1H0A0j0.2H4W484i414345473Z3 3`4c4p324f4@4r4(1*4I0l3V4=044_4.4O044Q444T4V4 512`4u040y4w594G3^0I0f0.02030r0z0G0x5m5o0G4%524Y4!044L5g4N2.4P4R57465B4X0)5c5e5v2`5j5l5n5p0C5s5p4-2`4:4E4^4^5h4)040P4l3/3;5N3k5c0w5f2Q5a3k4A2$5Z5?3^4I2f0E0O0v135I4`5D5(5*4n3h143M0k2m2N6c3u1l3w2p2s2n0t1C6f0i3v0:6p0T0V0X04.