Если вы просто хотите сбрасывать со счетов кавычки, в которые заключена сама строка, самый простой способ может заключаться в strip
исключении из строки перед подсчетом.
>>> text = "'This test is an example, this text doesn't have any meaning. It is only an example.'"
>>> text.strip("'").count("'")
1
Другой способ был бы срегулярное выражение типа \w'\w
, то есть буква, за которой следует '
, за которой следует буква:
>>> sum(1 for _ in re.finditer("\w'\w", text))
1
Это также работает для кавычек внутри строки:
>>> text = "Text that has a 'quote' in it."
>>> sum(1 for _ in re.finditer("\w'\w", text))
0
Но это будеттакже пропустите апострофы, за которыми не следует еще одна буква:
>>> text = "All the houses' windows were broken."
>>> sum(1 for _ in re.finditer("\w'\w", text))
0