Это более интересные явления, которые я встречал в модуле Python, который я пытаюсь понять, а не запрос на помощь (хотя решение также было бы полезно).
>>> import fuzzy
>>> s = fuzzy.Soundex(4)
>>> a = "apple"
>>> b = a
>>> sdx_a = s(a)
>>> sdx_a
'A140'
>>> a
'APPLE'
>>> b
'APPLE'
Да, поэтому модуль fuzzy полностью нарушает неизменность строк в Python. Может ли это сделать, потому что это C-расширение? И это является ошибкой в CPython, а также модулем или даже угрозой безопасности?
Кроме того, может ли кто-нибудь подумать о способе обойти это поведение? Я хотел бы иметь возможность сохранить первоначальную заглавную строку.
Приветствия,
Алекс