标签: ming

Mingw64安装添加了Pyhton版本!如何删除 mingw64 Python 并保留我的?

我安装了Python 3.8.10 64位(win10)。我将它与 VSC 一起使用。另外对于 c/c++ 我已经安装了 mingw64。Mingw64 安装了一个 python 版本,不知道为什么和为什么,但它已经出现了问题。因为 mingw64 安装是系统范围的安装,并且 Path 是系统变量,所以每次我尝试从控制台运行某些内容时,都会使用 mingw64 python 安装。所以我的 python 安装是本地的、用户范围的安装。因此,每次都会首选系统范围安装,除非我每次都指定路径。

最烦人的问题是

PS C:\src\python-ivi-master> python .\setup.py install
Traceback (most recent call last):
  File "C:\src\python-ivi-master\setup.py", line 11, in <module>
    from setuptools.command.test import test as TestCommand
ModuleNotFoundError: No module named 'setuptools'
Run Code Online (Sandbox Code Playgroud)

它找不到模块,例如 setuptools。如果我列出已安装的软件包,则该模块就在那里。

Package           Version
----------------- -------
easy-scpi         0.1.2
modbus            3.2
numpy             1.22.3
pandas            1.4.1
pip               22.0.4
pymodbus          2.5.3
pyserial          3.5
python-dateutil   2.8.2
python-ivi        0.14.9
pytz              2021.3
PyVISA            1.11.3
scpi              2.4.0
setuptools        60.10.0 …
Run Code Online (Sandbox Code Playgroud)

python setuptools pythonpath ming windows-10

6
推荐指数
1
解决办法
841
查看次数

以可测试的方式连接到mongodb

我打算使用Flask和MongoDB(可能是Ming作为ODM)在python中编写一个webapp.问题是我想保持我的模型和控制器真正分离,其中一个原因是能够在单独的组件上运行简单的单元测试.

现在这是我的问题,在我需要连接到MongoDB的请求生命周期中的某个时刻.每个请求都有一个单独的连接.Flask提供了一个线程本地对象,它可以包含请求的全局变量,这似乎是放置mongo连接的好地方.但是,这会在数据层和Flask之间产生一种硬依赖关系,这将使得单独测试或运行它们非常困难.

所以我的问题是,是否有一个优雅的解决方案.我自己想出了几个选项,但它们远非优雅.

首先,我可以给数据模块一个函数,告诉它从哪里获取连接对象.或者类似地将它交给一个可以用来获取新连接的函数.

第二个选项是创建一个类,模块可以使用它来获取与MongoDB的连接,然后创建此类的两个版本,一个使用Flask的全局对象,另一个只是明显连接到MongoDB.

这些对我来说似乎都不健壮或优雅,有没有办法更好地做到这一点?

python mongodb pymongo flask ming

4
推荐指数
1
解决办法
1079
查看次数

标签 统计

ming ×2

python ×2

flask ×1

mongodb ×1

pymongo ×1

pythonpath ×1

setuptools ×1

windows-10 ×1