In Python, a string (`str`) is a sequence of characters used to represent text. Strings are created by enclosing characters in single quotes (`'...'`), double quotes (`"..."`), or triple quotes (`"""..."""` or `'''...'''`) for multiline strings. Strings are immutable, meaning once created, their contents cannot be changed. You can perform various operations on strings like concatenation, repetition, indexing, and slicing.
A Python str is a string object plus a sequence of character bytes. The object header holds things like length and encoding details, while the data region holds the actual characters. More characters mean more data bytes, but the header stays roughly the same size.
Even a tiny string like "hi" needs a Python string object plus space to hold its characters.