Comment peut-on supprimer les x premiers caractères d'une chaîne? Par exemple, si l'on avait une chaîne lipsum, comment supprimeraient-ils les 3 premiers caractères et obtiendraient-ils un résultat sum?
Une autre façon (en fonction de vos besoins réels): Si vous souhaitez afficher les n premiers caractères et enregistrer à la fois les caractères sautés et la chaîne modifiée:
s ='lipsum'
n =3
a, s = s[:n], s[n:]print(a)# lipprint(s)# sum
Notez que cela est plus long dans le code et prendra également plus de temps puisque vous devez rechercher la sous-chaîne avant de la remplacer. En outre: >>> x = 'liplip'>>> x.replace(x[:3], '')''. Bien sûr, vous pouvez résoudre ce problème en ayant le troisième paramètre (count) = 1, mais cela prendrait encore plus de temps.
jamylak
nah c'est lié à votre réponse donc il appartient ici. Vous pouvez ajouter count = 1 au vôtre pour qu'il fonctionne toujours btw
jamylak
4
Utilisez del.
Exemple:
>>> text ='lipsum'>>> l = list(text)>>>del l[3:]>>>''.join(l)'sum'
Cela ne fonctionne pas comme vous le pensez text = 'liplip'>>> text.lstrip(text[:3])''car pour l'un, l' argument chars n'est pas un préfixe; au contraire, toutes les combinaisons de ses valeurs sont supprimées:str.lstrip([chars])
jamylak
@jamylak Edited mine
U10-Forward
1
Aucune des solutions ne fonctionne, par exemple. pour 'liplip'. Dans le secondTypeError: 'str' object does not support item deletion
jamylak
@jamylak modifié à nouveau
U10-Forward
@jamylak ça marche, maintenant, si oui, avez-vous besoin de voter contre?
U10-Forward le
2
Exemple pour afficher les 3 derniers chiffres du numéro de compte.
"lipsumm"[3:] == "summ"
Réponses:
Voir la documentation officielle sur les chaînes pour plus d'informations et cette réponse SO pour un résumé concis de la notation.
la source
Une autre façon (en fonction de vos besoins réels): Si vous souhaitez afficher les n premiers caractères et enregistrer à la fois les caractères sautés et la chaîne modifiée:
la source
la source
>>> x = 'liplip'
>>> x.replace(x[:3], '')
''
. Bien sûr, vous pouvez résoudre ce problème en ayant le troisième paramètre (count) = 1, mais cela prendrait encore plus de temps.Utilisez
del
.Exemple:
la source
text = 'liplip'
>>> text.lstrip(text[:3])
''
car pour l'un, l' argument chars n'est pas un préfixe; au contraire, toutes les combinaisons de ses valeurs sont supprimées:str.lstrip([chars])
'liplip'
. Dans le secondTypeError: 'str' object does not support item deletion
Exemple pour afficher les 3 derniers chiffres du numéro de compte.
la source
>>> x = '12345678901234567890'
>>> x.replace(x[:7], 'xxxxxxx')
'xxxxxxx890xxxxxxx890'
x
s au lieu de les supprimer