小编Rag*_*ami的帖子

pypy中使用venv和pip的正确方法

我一直在使用 cpython,但我对 pypy 很陌生。

在cpython中,这就是我使用虚拟环境和pip的方式。

python3 -m venv venv
source venv/bin/activate
python3 -m pip install <package>
Run Code Online (Sandbox Code Playgroud)

我最近开始在一个项目中使用 pypy,并注意到以下内容有效。

pypy3 -m venv venv
source venv/bin/activate
pypy3 -m pip install <package>
Run Code Online (Sandbox Code Playgroud)

问题:

  • cpython venv/pip 和 pypy venv/pip 之间有什么区别吗?
  • 我可以使用 cpython 创建 venv,并将其与 pypy 一起使用,反之亦然吗?
  • 同样,我可以使用 cpython 的 pip 安装软件包,并从 pypy 解释器使用它们,反之亦然吗?
  • 我正在做的事情“正确”吗?或者如果我走这条路,我将来会遇到任何缺点/问题吗?

我更喜欢调用的原因python3 -m ...

  • venv 存在于 std 中。lib,所以我不必全局安装 virtualenv。
  • pip比使用and更明确pip3

参考:


编辑:
尝试在 cpython 和 venv 之间共享 venv 不起作用(事后看来似乎很明显)。仍然可以创建两个单独的 venv,例如 …

python pypy ubuntu-22.04

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

BFMatcher 中匹配的 OpenCV 长度

我正在尝试在两个图像上使用 SIFT,并在 OpenCV 中使用 BFMatcher 匹配关键点。

但是,匹配的数量不等于查询描述符的数量。有人可以解释为什么它们不相等吗?

根据文档 match()功能“从查询集中找到每个描述符的最佳匹配。”

import cv2
import numpy as np

im1 = cv2.imread("trex1.png", cv2.IMREAD_GRAYSCALE)
im2 = cv2.imread("trex2.png", cv2.IMREAD_GRAYSCALE)

sift = cv2.xfeatures2d.SIFT_create()
kp1, des1 = sift.detectAndCompute(im1, None)
kp2, des2 = sift.detectAndCompute(im2, None)

im_kp1 = np.zeros(im1.shape, dtype=np.uint8)
im_kp2 = np.zeros(im1.shape, dtype=np.uint8)
im_kp1 = cv2.drawKeypoints(im1,kp1,None)
im_kp2 = cv2.drawKeypoints(im2,kp2,None)

bf = cv2.BFMatcher(cv2.NORM_L2, crossCheck=True)
matches = bf.match(des1,des2)

print len(des1)
# Result : 78
print len(des2)
# Result : 71
print len(matches)
# Result : 55
Run Code Online (Sandbox Code Playgroud)

python opencv

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

在Apache Spark中按多个字段排序

我有一个火花的RDD.RDD的每个元素都是一个列表.而且,所有元素都是相似模式的列表,所以它有点像表.我需要按特定优先级顺序按某些列排序RDD.

我怎样才能做到这一点?

PS:这是我试过的.

我尝试按优先级最高的字段排序,然后按其分组,然后按优先级次高的字段对每个结果进行排序.我递归地做了这个,并加入了结果.但是,使用RDD.groupBy这么多次使它非常慢.

python sorting apache-spark pyspark

-3
推荐指数
1
解决办法
2万
查看次数

标签 统计

python ×3

apache-spark ×1

opencv ×1

pypy ×1

pyspark ×1

sorting ×1

ubuntu-22.04 ×1