草庐IT

python - 带有可拖动点的可拖动线

我需要在figureCanvas中有2个可拖动点。但是我有一个补充约束:这2个点必须用一条线连接起来。当我拖动一个点时,当然(否则它不会很有趣),必须动态绘制线,并且仍然链接到2个点。我设法创建了2个可拖动点,主题如下:Matplotlibdragoverlappingpointsinteractively我修改了一些代码以通过FigureCanvas的子类使用它(稍后将图形包含在PyQt应用程序中):importmatplotlib.pyplotaspltimportmatplotlib.patchesaspatchesclassDraggablePoint:#https://sta

python - Matplotlib 自定义投影 : How to transform points

我正在使用Matplotlib的自定义投影,但不明白如何在投影内进行矢量变换(注意:自定义投影是具有赤道方位的兰伯特方位角等积投影).在我的示例中,我想将一个向北倾斜30°的点(意味着该点位于赤道北纬60°)转换为一个向东倾斜30°的点(意味着位于赤道以东60°)本初子午线)。我想借助向量变换矩阵来完成此操作,以便将来使用该程序进行更复杂的计算。但我真的不明白如何正确获取转换后的向量的长度(或获取该点的正确经度和纬度)。我也在研究这个例子,但它使用了稍微不同的转换方法:https://github.com/joferkington/mplstereonet/blob/master/mp

python - 在 Python 2.7 的 isinstance 函数中实现元组和列表

我试图在Python的__add__方法中接受tuple和list作为对象类型。请看下面的代码:classPoint(object):'''Apointonagridatlocationx,y'''def__init__(self,x,y):self.X=xself.Y=ydef__str__(self):return"X="+str(self.X)+"Y="+str(self.Y)def__add__(self,other):ifnotisinstance(other,(Point,list,tuple)):raiseTypeError("MustbeoftypePoint,list

python - 如何以可靠的方式跟踪 python 对象的实例?

我希望能够跟踪几何Point对象的实例,以便在自动命名新名称时知道哪些名称已经“被采用”。例如,如果创建了名为“A”、“B”和“C”的点,则下一个自动命名的点将命名为“D”。如果名为“D”的点被删除,或者其引用丢失,则名称“D”再次可用。我的Point对象的主要属性被定义为属性,并且是非常标准的x、y和name.有问题的解决方案和“繁重”的解决方法我按照说明进行了操作here,使用weakref.WeakSet()。我将其添加到我的Point类中:#classattributeinstances=weakref.WeakSet()@classmethoddefnames_in_use(

python - 如何使用 entry_point 脚本启动调试器

我使用pipinstall-e./mylocalpkg在开发模式下安装了一个包。这个包定义了一个entry_points.console_scriptsetup(name='mylocalpkg',...entry_points={'console_scripts':['myscript=mylocalpkg.scriptfile:main']},...)这个脚本可以用任何一种方式调用$python-mmylocalpkg.scriptfile$myscript但是,我无法调试这个脚本:$python-mpdbmylocalpkg.scriptfileError:mylocalpkg.

python - Django/Python : Update the relation to point at settings. AUTH_USER_MODEL

我是Python和Django的新手,但我需要在我的服务器上安装testbedserver-software(为此我遵循tutorial)。现在我在运行以下命令时遇到了麻烦:pythonmanage.pysyncdb显示以下错误:CommandError:Oneormoremodelsdidnotvalidate:menu.bookmark:'user'definesarelationwiththemodel'auth.User',whichhasbeenswappedout.Updatetherelationtopointatsettings.AUTH_USER_MODEL.dash

Python 在同一目录中创建/导入自定义模块

我正在尝试创建一个简单的python脚本并导入几个自定义类。我想把它作为一个模块来做。这是我所拥有的:点/点.pyclassPoint:"""etc."""点/点列表.pyclassPointList:"""etc."""点/__init__.pyfrom.importpoint,pointlist脚本.pyimportsys,pointverbose=Falsepointlist=PointList()当我运行script.py时,我得到NameError:name'PointList'isnotdefined奇怪的是,在point/中,所有三个模块文件(__init__、point

python - inpolygon - matplotlib.path.Path contains_points() 方法的示例?

我一直在寻找MATLAB的inpolygon()的python替代品,我发现contains_points是一个不错的选择。但是,文档有点空洞,没有说明contains_points需要什么类型的数据:contains_points(points,transform=None,radius=0.0)ReturnsaboolarraywhichisTrueifthepathcontainsthecorrespondingpoint.IftransformisnotNone,thepathwillbetransformedbeforeperformingthetest.radiusallo

python - 在 Python 的 load_entry_point 期间找不到模块

我试图在我的一个python模块中为main方法创建一个入口点,但导入该函数所在的模块似乎有问题。我的setup.py看起来像这样:...setup(name="awesome-tool",...,entry_points={'console_scripts':['awesome-tool=awesome_tool.awesome_tool:main']})项目组织如下:awesome_tool|__awesome_tool.py|____init__.pyawesome_tool.py包含一个名为main()的函数,我想在名为awesome-tool的可执行文件中提供该函数。执行se

python - 为什么我的 A* 实现比 floodfill 慢?

我有一个由100、100个方block组成的空白网格。起点是(0,0),目标是(99,99)。磁贴是4路连接。我的floodfill算法在30毫秒内找到了最短路径,但我的A*实现速度慢了大约10倍。注意:无论网格或布局的大小如何,A*始终比我的填充慢(3-10倍)。因为填充很简单,所以我怀疑我在A*中遗漏了某种优化。这是函数。我使用Python的heapq来维护一个f排序列表。“图表”包含所有节点、目标、邻居和g/f值。importheapqdefsolve_astar(graph):open_q=[]heapq.heappush(open_q,(0,graph.start_point