Python NameError: name 'ctypes' is not defined

13,920

Solution 1

By doing from ctypes import * you are pulling everything from ctypes module to local namespace, so you should be calling WinDLL directly:

>>> from ctypes import *
>>> lib = WinDLL('C:/Develop/test/SDK.dll')

Another (and as mentioned by NPE usually better) way to do it is to import just ctypes:

>>> import ctypes
>>> lib = ctypes.WinDLL('C:/Develop/test/SDK.dll')

Solution 2

Change

from ctypes import *

to

import ctypes

The former imports all names from ctypes into the current namespace. It is generally considered to be a bad practice and is best avoided.

Share:
13,920
toni
Author by

toni

Updated on June 05, 2022

Comments

  • toni
    toni almost 2 years

    I am trying to call a function from a custom .dll file. But when I try to load my library SDK.dll, i get the following error. I am following the indications found here: Python import dll

    Does anyone know what the problem is? I only found references of this problem for MAC enviroments.

    >>> from ctypes import *
    >>> lib = ctypes.WinDLL('C:/Develop/test/SDK.dll')
    
    Traceback (most recent call last):
      File "<pyshell#19>", line 1, in <module>
        lib = ctypes.WinDLL('C:/Develop/test/SDK.dll')
    NameError: name 'ctypes' is not defined