Questions rapides sur les connaissances de base de Python
大家讲道理
大家讲道理 2017-05-24 11:34:52
0
3
704
s = 'w w'
s.strip() # 为什么去除不了中间的空格

s = 'w w'
s.replace('\s',';') # 为什么替换不了,\s 表示空格没错吧。。

En fait, la dernière exigence est la suivante :
C'est-à-dire que des espaces (plusieurs), des sauts de ligne (plusieurs), des retours chariot (plusieurs) et d'autres caractères d'espacement apparaîtront au milieu et des deux côtés de la chaîne. convertir ces caractères d'espacement en ";" , existe-t-il un bon moyen

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(3)
伊谢尔伦

Strip supprime les espaces aux extrémités gauche et droite, mais les espaces au milieu ne peuvent pas être supprimés.
replace ne peut pas utiliser d'expressions régulières comme paramètres, vous devez utiliser le module re.

import re
re.sub('\s+', ';', 'w w')
phpcn_u1582

replace est utilisé pour remplacer une chaîne par une autre chaîne, s est une chaîne ordinaire et n'a aucune autre signification.

Pour vos besoins, je pense que vous pouvez utiliser str.maketrans et traduire des fonctions pour y parvenir.

Mon environnement d'exécution est python3.5, l'exemple est le suivant :
s = 'w w'
transmap=str.maketrans({' ':';','r':';','n':' ;' })
print( s.translate(transmap) )

Résultat de l'exécution :
w;w

phpcn_u1582

En fait ";".join(s.split()) c'est bien

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal