Ist es möglich, Instanziierung mit Zitaten für eine benutzerdefinierte STR -Klasse zu verwenden?Python

Python-Programme
Anonymous
 Ist es möglich, Instanziierung mit Zitaten für eine benutzerdefinierte STR -Klasse zu verwenden?

Post by Anonymous »

Ich habe eine benutzerdefinierte Str -Klasse geschrieben, weil ich eine Coallfold () -Methode haben möchte, die deutsche und skandinavische Umlauts ersetzt (ä, Å, ö, Ø, ü…). Es erbt aus der Standard -STR -Klasse und ersetzt nur die Methode der CaseFold () nach der Verwendung davon.

Code: Select all

class str(str):
def casefold(self):
umlauts: dict ={
'ä': 'ae',
'ö': 'oe',
'ü': 'ue',
'œ': 'oe',
'ø': 'oe',
'æ': 'ae',
'å': 'aa',
}
string_ = self.__repr__().casefold()
for letter in string_:
if letter in umlauts:
string_ = string_.replace(letter, umlauts[letter])
return string_
Wenn ich Str () verwende, um eine Zeichenfolge zu instanziieren, funktioniert es gut:

Code: Select all

str('äåöøü').casefold()
"'aeaaoeoeue'"
, aber wenn ich mit '' instanziiert, wird die Standard -STR -Klasse verwendet.

Code: Select all

'äåöøüß'.casefold()
'äåöøüss'

type(str('äåöøü'))


type('äåöøüß')

Gibt es eine Möglichkeit, dies zu ändern, um die Instanziierung mit '' in die benutzerdefinierte Klasse zu ändern? Ich konnte nichts dazu finden.

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post