0

私は、良くも悪くも、私が呼び出したプライベートモジュールを持っていますtimegraphモジュールを使用するのと同じディレクトリに存在する、私が呼び出した別のモジュールがありredis-pyます。

残念ながら、私のtimeモジュールは標準モジュールが行うこととまったく同じではなくtime、その結果、次のエラーが発生します。

$ /opt/stuff/bin/python /opt/stuff/lib/utils/graph.py
Traceback (most recent call last):
  File "/opt/stuff/lib/utils/graph.py", line 6, in <module>
    import redis
  File "/opt/stuff/lib/python2.6/site-packages/redis/__init__.py", line 1, in <module>
    from redis.client import Redis, StrictRedis
  File "/opt/stuff/lib/python2.6/site-packages/redis/client.py", line 6, in <module>
    import time as mod_time
  File "/opt/stuff/lib/utils/time.py", line 5, in <module>
    import pytz
  File "/usr/lib/python2.6/site-packages/pytz/__init__.py", line 32, in <module>
    from pkg_resources import resource_stream
  File "/opt/stuff/lib/python2.6/site-packages/pkg_resources.py", line 761, in <module>
    class Environment(object):
  File "/opt/stuff/lib/python2.6/site-packages/pkg_resources.py", line 764, in Environment
    def __init__(self, search_path=None, platform=get_supported_platform(), python=PY_MAJOR):
  File "/opt/stuff/lib/python2.6/site-packages/pkg_resources.py", line 140, in get_supported_platform
    plat = get_build_platform(); m = macosVersionString.match(plat)
  File "/opt/stuff/lib/python2.6/site-packages/pkg_resources.py", line 282, in get_build_platform
    from distutils.util import get_platform
  File "/opt/stuff/lib64/python2.6/distutils/__init__.py", line 25, in <module>
    from distutils import dist, sysconfig
  File "/usr/lib64/python2.6/distutils/dist.py", line 21, in <module>
    from distutils.fancy_getopt import FancyGetopt, translate_longopt
  File "/usr/lib64/python2.6/distutils/fancy_getopt.py", line 32, in <module>
    longopt_xlate = string.maketrans('-', '_')
AttributeError: 'module' object has no attribute 'maketrans'

モジュールを削除するとtime、エラーが修正されます。graph.py基本的にモジュールを無視してシステムのモジュールを使用するようにハックする方法はありtimeますか? 使用してみましfrom __future__ import absolute_importたが、違いはないようです。

4

1 に答える 1