Étant donné un chemin, par exemple
file_path = 'a.b.c.d.e'
Je souhaite supprimer le e
.
C'est ce que j'ai fait :
class_path = ('.').join(file_path.split('.')[0:-1])
Y a-t-il un moyen plus élégant de le faire ?
Étant donné un chemin, par exemple
file_path = 'a.b.c.d.e'
Je souhaite supprimer le e
.
C'est ce que j'ai fait :
class_path = ('.').join(file_path.split('.')[0:-1])
Y a-t-il un moyen plus élégant de le faire ?
Simplement avec str.rfind
fonction :
file_path = 'a.b.c.d.e'
file_path = file_path[:file_path.rfind('.')+1]
print(file_path) # a.b.c.d.
Si la queue .
n'est pas nécessaire - supprimez +1
déplacement : ( file_path[:file_path.rfind('.')]
).
Vous pourriez utiliser rpartition par exemple, si vous voulez vous en tenir à méthodes de chaîne :
class_path = file_path.rpartition('.')[0]
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.