Python无法导入模块

2 投票
1 回答
2879 浏览
提问于 2025-04-19 19:00

我遇到了一个问题。我想使用docker-py(0.4.0)这个库,但我无法导入它。

我的代码如下:

docker.py

import docker

c = docker.Client()

c.info()

然后我收到了这个错误信息:

Traceback (most recent call last):
  File "./docker.py", line 1, in <module>
    import docker
File "/home/vagrant/docker.py", line 3, in <module>
  c = docker.Client()
AttributeError: 'module' object has no attribute 'Client'

当我在Python解释器中运行它时,它是可以工作的。

>>> import docker
>>> c = docker.Client()
>>> c.info()
{u'KernelVersion': u'3.13.0-35-generic', u'NFd': 12, u'MemoryLimit': 1, 
u'InitSha1': u'',u'SwapLimit': 0, u'Driver': u'devicemapper', 
u'IndexServerAddress': u'https://index.docker.io/v1/', u'NGoroutines': 11, 
u'Images': 310, u'InitPath': u'/usr/bin/docker', u'Containers': 1, 
u'ExecutionDriver': u'native-0.2', u'Debug': 0, u'NEventsListener': 0, 
u'DriverStatus': [[u'Pool Name', u'docker-8:1-140095-pool'], 
[u'Pool Blocksize', u'64 Kb'], [u'Data file', /var/lib/docker/devicemapper/devicemapper/data'], [u'Metadata file', u'/var/lib/docker/devicemapper/devicemapper/metadata'], 
[u'Data Space Used', u'3602.1 Mb'], [u'Data Space Total', u'102400.0 Mb'], 
[u'Metadata Space Used', u'8.7 Mb'], [u'Metadata Space Total', u'2048.0 Mb']], 
u'OperatingSystem': u'Ubuntu 14.04.1 LTS', u'IPv4Forwarding': 1}
>>>

我没有使用任何虚拟环境,只是用系统自带的Python。我在两台机器上都试过,但结果一样。

有人能告诉我我哪里做错了吗?

1 个回答

12

你的文件名是 docker.py,当你写 import docker 的时候,它会试图导入它自己。试着改一下你的文件名,然后再运行一次。

撰写回答