Как удалить все ведущие и конечные знаки препинания в Python? [дубликат]

этот вопрос уже есть ответ здесь:

Я знаю как удалить все знаки препинания в строке.

import string

s = '.$ABC-799-99,#'

table = string.maketrans("","") # to remove punctuation
new_s = s.translate(table, string.punctuation)

print(new_s)
# Output
ABC79999

Как удалить все ведущие и конечные знаки препинания в Python? Желаемый результат '.$ABC-799-99,#' is 'ABC-799-99'.

1 ответов


Вы делаете именно то, что вы упоминаете в своем вопросе, вы просто .полосы его.

from string import punctuation
s = '.$ABC-799-99,#'

print(s.strip(punctuation))

выход:

 ABC-799-99

.полосы может принимать несколько символов для удаления.

если вы просто хотите удалить ведущую пунктуацию, вы можете .lstrip:

s.lstrip(punctuation)

или rstrip любая конечная пунктуация:

 s.rstrip(punctuation)