You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django虚拟环境中已装Stripe却导入失败(ModuleNotFoundError)求助

问题:Django虚拟环境中已安装Stripe但导入失败

我通过pip安装了Stripe库(版本5.2.0,已在依赖列表中确认),但在Django项目的虚拟环境中运行代码时,导入stripe模块却提示ModuleNotFoundError。

错误堆栈信息

Exception in thread django-main-thread:
Traceback (most recent call last):
  File "C:\Users\bench\AppData\Local\Programs\Python\Python311\Lib\threading.py", line 1038, in _bootstrap_inner
    self.run()
  File "C:\Users\bench\AppData\Local\Programs\Python\Python311\Lib\threading.py", line 975, in run
    self._target(*self._args, **self._kwargs)
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\utils\autoreload.py", line 64, in wrapper
    fn(*args, **kwargs)
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\core\management\commands\runserver.py", line 134, in inner_run
    self.check(display_num_errors=True)
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\core\management\base.py", line 475, in check
    all_issues = checks.run_checks(
                 ^^^^^^^^^^^^^^^^^^
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\core\checks\registry.py", line 88, in run_checks
    new_errors = check(app_configs=app_configs, databases=databases)
                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\core\checks\urls.py", line 42, in check_url_namespaces_unique
    all_namespaces = _load_all_namespaces(resolver)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\core\checks\urls.py", line 61, in _load_all_namespaces
    url_patterns = getattr(resolver, "url_patterns", [])
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\utils\functional.py", line 57, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
                                         ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\urls\resolvers.py", line 715, in url_patterns
    patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
                       ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\utils\functional.py", line 57, in __get__
    res = instance.__dict__[self.name] = self.func(instance)
                                         ^^^^^^^^^^^^^^^^^^^
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\urls\resolvers.py", line 708, in urlconf_module
    return import_module(self.urlconf_name)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\bench\AppData\Local\Programs\Python\Python311\Lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "C:\Users\bench\Documents\z12-app\server\z12_server\urls.py", line 24, in <module>
    path('payments/', include('payment_processing_app.urls')),
                      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\bench\Documents\z12-app\server\.venv\Lib\site-packages\django\urls\conf.py", line 38, in include
    urlconf_module = import_module(urlconf_module)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "C:\Users\bench\AppData\Local\Programs\Python\Python311\Lib\importlib\__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "<frozen importlib._bootstrap>", line 1206, in _gcd_import
  File "<frozen importlib._bootstrap>", line 1178, in _find_and_load
  File "<frozen importlib._bootstrap>", line 1149, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 940, in exec_module
  File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
  File "C:\Users\bench\Documents\z12-app\server\payment_processing_app\urls.py", line 2, in <module>
    from . import views
  File "C:\Users\bench\Documents\z12-app\server\payment_processing_app\views.py", line 10, in <module>
    import stripe
ModuleNotFoundError: No module named 'stripe'

我的Stripe使用代码

import stripe

stripe.api_key = stripe_secret_key

try:
  charge = stripe.Charge.create(
    amount = total_amount,
    currency = 'eur',
    source = {
      'object': 'card',
      'number': card_number,
      'exp_month': expiry_month,
      'exp_year': expiry_year,
      'cvc': cvv
    },
    description = title
  )
except Exception as e:
  print('Error: ', e)

解决方案

1. 确认虚拟环境是否激活

运行Django项目前,必须确保虚拟环境处于激活状态:

  • Windows系统执行:C:\Users\bench\Documents\z12-app\server\.venv\Scripts\activate.bat
  • 激活后命令行前缀会显示.venv,此时再执行pip install stripe==5.2.0,确保安装在虚拟环境内。

2. 检查pip是否指向虚拟环境的pip

激活虚拟环境后,执行where pip(Windows),查看输出路径是否包含.venv目录,确认使用的是虚拟环境内的pip。

3. 验证Stripe是否真的安装在虚拟环境中

激活虚拟环境后,执行pip list查看输出,确认stripe及其版本5.2.0存在于列表中。

4. 检查IDE的Python解释器配置

如果使用VS Code或PyCharm等IDE,需确认项目选择的Python解释器是虚拟环境内的Python(路径为C:\Users\bench\Documents\z12-app\server\.venv\Scripts\python.exe)。

5. 重新安装Stripe到虚拟环境

如果以上步骤都确认无误仍报错,可尝试:

pip uninstall stripe
pip install stripe==5.2.0

内容的提问来源于stack exchange,提问作者ben_11

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 14:18:12