Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

PERL -> PYTHON Chomp (suppression du caractère de fin de ligne)

16 réponses
Avatar
lesouriciergris
Existe t'il une fonction Python qui permet de supprimer le caractère de
fin de ligne d'une chaîne de caractère (\n) ?

Merci

--
\_@°> Eric BERTHOMIER / Le Sourcier Gris
http://lesouriciergris.free.fr http://troll.west.free.fr

10 réponses

1 2
Avatar
Hervé Cauwelier
Existe t'il une fonction Python qui permet de supprimer le caractère de
fin de ligne d'une chaîne de caractère (n) ?


La méthode rstrip des chaînes.

--
Hervé Cauwelier
http://www.oursours.net/

Avatar
Jerome
wrote:
Existe t'il une fonction Python qui permet de supprimer le caractère de
fin de ligne d'une chaîne de caractère (n) ?

Merci



Bonjour,
tu as la fonction strip() qui supprime les caractères inutiles au
début et à la fin de la chaîne.
Sinon un replace('n', '') marche aussi si le caractère est au milieu de
la chaîne

Avatar
lesouriciergris
Jerome wrote:
wrote:

Existe t'il une fonction Python qui permet de supprimer le caractère
de fin de ligne d'une chaîne de caractère (n) ?

Merci



Bonjour,
tu as la fonction strip() qui supprime les caractères inutiles au
début et à la fin de la chaîne.
Sinon un replace('n', '') marche aussi si le caractère est au milieu de
la chaîne


Merci bien,je viens de chercher la documentation sur le site de Python
et je viens de voir que ces méthodes sont dites Deprecated.
Pourriez vous m'indiquer pourquoi ? et quelle sera la solution non
désapprouvée (une expression régulière ?)

"You should consider these functions as deprecated, although they will
not be removed until Python 3.0."

--
_@°> Eric BERTHOMIER / Le Sourcier Gris
http://lesouriciergris.free.fr http://troll.west.free.fr


Avatar
Jean-michel
Bonjour,

Les fonctions de la famille strip sont dépréciée en tant que fonctions
autonomes, mais existent comme méthodes de la classe string.
Ce qui veut dire qu'il faut plutôt utiliser 's.strip()' que 'strip(s)'.
En plus, ça évite de faire un import du module string.

Ceci dit, ces fonctions sont encore très utilisées comme telles, et je ne
vois pas bien pourquoi le module string serait retiré. Si cela arrive, il
faudra que je revoie une partie des programmes que j'utilise...

A+
jm

a écrit dans le message de news:
d1r5ea$jlj$
Jerome wrote:
wrote:

Existe t'il une fonction Python qui permet de supprimer le caractère de
fin de ligne d'une chaîne de caractère (n) ?

Merci



Bonjour,
tu as la fonction strip() qui supprime les caractères inutiles au début
et à la fin de la chaîne.
Sinon un replace('n', '') marche aussi si le caractère est au milieu de
la chaîne


Merci bien,je viens de chercher la documentation sur le site de Python et
je viens de voir que ces méthodes sont dites Deprecated.
Pourriez vous m'indiquer pourquoi ? et quelle sera la solution non
désapprouvée (une expression régulière ?)

"You should consider these functions as deprecated, although they will not
be removed until Python 3.0."

--
_@°> Eric BERTHOMIER / Le Sourcier Gris
http://lesouriciergris.free.fr http://troll.west.free.fr




Avatar
Jerome
wrote:
Jerome wrote:

wrote:

Existe t'il une fonction Python qui permet de supprimer le caractère
de fin de ligne d'une chaîne de caractère (n) ?

Merci



Bonjour,
tu as la fonction strip() qui supprime les caractères inutiles au
début et à la fin de la chaîne.
Sinon un replace('n', '') marche aussi si le caractère est au milieu
de la chaîne



Merci bien,je viens de chercher la documentation sur le site de Python
et je viens de voir que ces méthodes sont dites Deprecated.
Pourriez vous m'indiquer pourquoi ? et quelle sera la solution non
désapprouvée (une expression régulière ?)

"You should consider these functions as deprecated, although they will
not be removed until Python 3.0."



L'utilisation de fonctions est à ne plus utiliser car elle ne respecte
pas la philosophie objet. Ces fonctions sont également des méthodes de
la classe string qui elles ne sont pas notées deprecated.

il ne faut plus faire

s = 'abcden'
strip(s)

mais

s = 'abcden
s.strip()



Avatar
Do Re Mi chel La Si Do
Bonjour !


ne plus utiliser car elle ne respecte pas la philosophie objet.




Un des avantages de Python, c'est qu'il laisse le choix au programmeur,
d'utiliser une programmation orientée objet, ou une programmation
procédurale (voire, même, un chouïa de programmation fonctionnelle).

J'espère bien que cela continuera, et que la POO ne sera pas progressivement
imposée aux développeurs qui ne le souhaitent pas.

Perso, j'utilise les deux, et n'ai pas trouvé d'avantages déterminant, pour
l'une ou l'autre, de ces philosophies de programmation.


@-salutations
--
Michel Claveau



Avatar
Sylvain Thenault
On Wed, 23 Mar 2005 11:04:20 +0100, Do Re Mi chel La Si Do wrote:

Bonjour !


ne plus utiliser car elle ne respecte pas la philosophie objet.




Un des avantages de Python, c'est qu'il laisse le choix au programmeur,
d'utiliser une programmation orientée objet, ou une programmation
procédurale (voire, même, un chouïa de programmation fonctionnelle).

J'espère bien que cela continuera, et que la POO ne sera pas
progressivement imposée aux développeurs qui ne le souhaitent pas.

Perso, j'utilise les deux, et n'ai pas trouvé d'avantages déterminant,
pour l'une ou l'autre, de ces philosophies de programmation.


dans le cas de la programmation fonctionnelle avec le module string, je
trouve personnellement que la version objet est beaucoup plus lisible :

escaped = basestring.replace('&', '&amp;').replace('<',
'&lt;').replace('>', '&gt')

VS
from
string import replace
escaped = replace(replace(replace(basestring, '&', '&amp'), '<', '&lt;'),
'>', '&gt;')

(ie lecture de gauche à droite VS lecture en partant du milieu puis vers
les 2 extrémités en même temps...)

Sachant en plus que l'implémentation fonctionnelle appelle la version
objet, je n'utilise donc jamais le module string (bon d'accord on y trouve
une ou deux fonctions n'ayant pas d'équivalent sur les objets chaines,
mais elles sont assez exotiques pour ne pas les mentionner ici)

--
Sylvain Thénault LOGILAB, Paris (France).

http://www.logilab.com http://www.logilab.fr http://www.logilab.org




Avatar
Hervé Cauwelier
dans le cas de la programmation fonctionnelle avec le module string, je
trouve personnellement que la version objet est beaucoup plus lisible :


Les fonctions « fonctionnelles » ont un sens dans un programme écrit en
fonctionnel. Votre exemple montre l'intérêt de la programmation objet.

Essayez d'utiliser une méthode avec map, reduce, les fonctions anonymes
(lambda)...

--
Hervé Cauwelier
http://www.oursours.net/

Avatar
Jerome
Do Re Mi chel La Si Do wrote:
Bonjour !



ne plus utiliser car elle ne respecte pas la philosophie objet.





Un des avantages de Python, c'est qu'il laisse le choix au programmeur,
d'utiliser une programmation orientée objet, ou une programmation
procédurale (voire, même, un chouïa de programmation fonctionnelle).


C'est aussi un des désavantages de python car il permet ainsi de
mélanger des styles de programmation différents et laisse donc la porte
ouverte au code spaghetti.


J'espère bien que cela continuera, et que la POO ne sera pas progressivement
imposée aux développeurs qui ne le souhaitent pas.


Toujours le fameux troll ;-)
Mais c'est vrai que l'imposition des concepts objets n'est pas forcément
une bonne chose. A partir du moment où les gens sont conscients de ce
qu'ils font réellement et qu'ils conservent le contrôle de leur code
c'est déjà bien.


Perso, j'utilise les deux, et n'ai pas trouvé d'avantages déterminant, pour
l'une ou l'autre, de ces philosophies de programmation.


C'est un avis personnel ;-)
Moi je trouve que la programmation objet permet une meilleure lisibilité
du programme, mais c'est mon avis et je ne veux l'imposer à personne.



@-salutations





Avatar
Do Re Mi chel La Si Do
Re


Une confrontation des différents points de vue pourrait être intéressante,
et lancer une grande discussion.

Par exemple, si j'aime bien l'approche objet de Python, je reproche à la
programmation orientée objet (et non la programmation objet), une
atomisation du code, à tel point qu'il peut être très difficile de retrouver
l'information.
J'ai un petit logiciel, avec une vingtaine de classes, héritant les unes des
autres (par héritage multiple), et avec surcharge de méthodes. Résultat : en
lisant une routine, c'est vraiment très difficile de retrouver le code qui
va s'appliquer.

A côté de ça, j'ai un gros logiciel, genre bibliothèque de fonctions,
essentiellement en procédural. La multiplicité des fonctions ne nuit pas à
la lisibilité, car chaque fonction a un usage bien précis, et les
possibilités de Python permettent de bien limiter les besoins de surcharge,
et la multiplicité des fonctions.

Mais il est vrai aussi que, pour certains scripts simples, j'apprécie la
facilité apportée par les classes, et que j'ai souvent du mal à relire des
fonctions réentrantes.


Le code "spaghetti", ce n'est pas lié ni à la programmation procédurale, ni
à la programmation objet, mais plutôt à la façon de programmer du
développeur.


Malheureusement, ce genre de message étant propice au "trolling", je me
demande si l'on doit poursuivre.


@-salutations

Michel Claveau
1 2