X Tutup
The Wayback Machine - https://web.archive.org/web/20250826130625/https://github.com/python/cpython/issues/93741
Skip to content

Add C API for importing an attribute from a module #93741

@serhiy-storchaka

Description

@serhiy-storchaka

It is common (more than 30 cases) in the C code to access a function or a variable from other module. For example:

    functools = PyImport_ImportModule("functools");
    if (!functools)
        goto error;
    st->partial = PyObject_GetAttrString(functools, "partial");
    Py_CLEAR(functools);

I propose to add a private helper function which combines PyImport_ImportModule() and PyObject_GetAttrString().

    st->partial = _PyImport_GetModuleAttrString("functools", "partial");

It will save 4-6 lines of code and a variable on every use.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions

      X Tutup