web-dev-qa-db-ja.com

Tweepy:ImportError:名前をランダムにインポートできません

Tweepyを使用してTwitterにメッセージを送信しています。 APIから長いトレースバックを取得しています。トレースバックは次の場所に落ち着きます。

ImportError: cannot import name Random

Pipを使用して最新バージョンのTweepyをインストールしました。

Name: tweepy
Version: 2.3.0
Location: /System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
Requires:

私が電話するとき

import tweepy

私はこのトレースバックを取得します:

Traceback (most recent call last):
  File "/Users/dromard/Projects/Drop Playlist/drop.py", line 4, in <module>
    import tweepy
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tweepy/__init__.py", line 14, in <module>
    from tweepy.api import API
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tweepy/api.py", line 8, in <module>
    from tweepy.binder import bind_api
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/tweepy/binder.py", line 5, in <module>
    import httplib
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/httplib.py", line 79, in <module>
    import mimetools
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/mimetools.py", line 6, in <module>
    import tempfile
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/tempfile.py", line 35, in <module>
    from random import Random as _Random
ImportError: cannot import name Random

Process finished with exit code 1

私はPyCharmで作業していて、サイトパッケージとPythonパスが設定で正しいことを確認しました。パスが正しいことをコンソールで手動でチェックし、重複する場所がないことを確認しました。

Tweepyに変更を加えていません。そのままPipにインストールさせます。権限は正しく見えます:

-rw-r--r--   1 root  wheel

コンソールでPythonをチェックすると:
-同じトレースバックを取得します
-個々のインポートを実行すると、すべてエラーなしで実行されます

random呼び出しですべて失敗します。ランダムはPythonのコアパッケージの一部であり、Tweepyの一部ではないと思います。

私はこのスクリプトを同僚に渡しました。同僚はPipを使用してtweepyをインストールし、同じトレースバックをヒットしました。ピップが貢献しているのではないかと思わせます。

私はPython(プログラミング全般)に比較的慣れていません。他の「インポートエラー」の記事を調べましたが、この特定の問題は見つかりませんでした。助けていただければ幸いです。

13
Damian Romard

私はこれを理解しました。乱数生成スクリプトの実験中にpython 'random.py'というファイルを作成しました。私の 'import random'呼び出しは、ライブラリRandomが不足しているこのファイルを取得していましたが、本質的に、適切な「ランダム」との競合が発生しました。

37
Damian Romard

必ずrandom.pyファイルを削除するか、別の名前で上書きしてから、「ランダムインポートからランダム」を再確認してください。

1
Shaik Zahid