There's a directory pymysql
there. A directory can also be imported as a module*, with the advantage that it can contain submodules. Classically, there's a __init__.py
file in the directory that controls what's in the top-level pymysql.*
namespace.
So, the connect
method you're missing will either be defined directly in pymysql/__init__.py
, or defined in one of its siblings in that directory, and then imported from there by pymysql/__init__.py
.
*Strictly speaking, a directory that you import
like a module is really called a "package". I like to avoid that term—it's potentially confusing because the term is overloaded: what you install with pip
is also called a "package" in sense 2, and that might actually contain multiple "packages" in sense 1.
See What is __init__.py for? and the official docs