In python (and some other languages) I have learned, that the name of a class should be written in small letters except for the first letter, which should be a capital lette
What you have presented is the standard convention.
Package and Module Names
Modules should have short, all-lowercase names. Underscores can be used in the module name if it improves readability. Python packages should also have short, all-lowercase names, although the use of underscores is discouraged.
Since module names are mapped to file names, and some file systems are case insensitive and truncate long names, it is important that module names be chosen to be fairly short -- this won't be a problem on Unix, but it may be a problem when the code is transported to older Mac or Windows versions, or DOS.
When an extension module written in C or C++ has an accompanying Python module that provides a higher level (e.g. more object oriented) interface, the C/C++ module has a leading underscore (e.g.
_socket).Class Names
Almost without exception, class names use the CapWords convention. Classes for internal use have a leading underscore in addition.
(Python Style Guide)
See e.g.
from configparser import ConfigParser
(which, incidentally, was ConfigParser in Python 2.x but changed to be lowercase in 3.x).