小编mdo*_*011的帖子

pythonic是什么意思?

在许多网站上,我经常看到代码不是pythonic的评论,或者有更多的pythonic方法来实现相同的目标.

pythonic在这种情况下意味着什么?例如,为什么

while i < someValue:
   do_something(list[i])
   i += 1
Run Code Online (Sandbox Code Playgroud)

不是pythonic而是

for x in list:
   doSomething(x)
Run Code Online (Sandbox Code Playgroud)

是pythonic?

python

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

使用python的mock patch.object来更改另一个方法中调用的方法的返回值

是否可以模拟在我试图测试的另一个函数中调用的函数的返回值?我希望模拟的方法(我将在我测试的许多方法中调用)在每次调用时返回我指定的变量.例如:

class Foo:
    def method_1():
       results = uses_some_other_method()
    def method_n():
       results = uses_some_other_method()
Run Code Online (Sandbox Code Playgroud)

在单元测试中,我想使用mock来更改返回值,uses_some_other_method()以便在任何时候调用Foo它,它将返回我在@patch.object(...)

python unit-testing patch mocking

55
推荐指数
3
解决办法
11万
查看次数

我可以动态计算技术债务吗?

我在"程序"文件夹中有大量单独的,不相关的Java程序,我真的希望能够为每个程序自动计算技术债务分数.我知道SonarQube可以让你用Sonar-Runner做这个(有点) ,但是我真的想要一种动态的方法,所以我可以让脚本分析并编写所有程序中的技术债务分数.程序"文件夹到csv.

如果它可以为我做这件事,我非常愿意并且乐于尝试任何其他类型的技术债务软件(或质量).我真的很感激任何输入,或者想一想这是否可能?

eclipse technical-debt design-debt sonar-runner sonarqube

10
推荐指数
1
解决办法
945
查看次数

Eclipse中的SonarQube插件不会显示在首选项中

我已经在eclipse中安装了SonarQube并重新启动了eclipse,但它没有显示在首选项中.我不知道下一步该尝试什么.

我安装了它 不会出现在偏好中 即使我搜索它

java eclipse plugins eclipse-plugin sonarqube

5
推荐指数
1
解决办法
4879
查看次数

Kivy:滚动缩放

有没有办法放大桌面kivy应用程序上的图像(例如,用鼠标滚轮缩放)?它似乎在这里讨论:https : //github.com/kivy/kivy/issues/3563但我看不出有没有解决的办法。

我从我的kivy应用程序中开始使用静态图像。我想添加缩放/平移图像的功能。我不希望图像框的实际大小发生变化,仅添加缩放/平移功能即可,例如,您可能希望与Google地图进行交互。

可能的编程方向

从我所读的内容中,我应该使用Scatter(?),并且看到可以手动设置Scatter比例来放大/缩小图像。

我最初的想法是,我将不得不添加一个单独的带有滚动视图的小部件以包含分散的布局,并使图像框架保持一致的大小。然后,我需要添加一个可动态更改比例值的事件。

问题所在

  • 我找不到合适的事件来更改比例值。这次on_motion活动看起来很有希望。我的应用程序可以使用滑块更新值,但是当我尝试使用类似的方法时on_motion,AttributeError: motion出错
  • 我正在努力创建小部件。大多数文档似乎都.add_widget(...)在python文件中使用。是否可以从kv文件中执行此操作?我想象这个过程类似于屏幕和屏幕管理器,但是我正在努力寻找一种可行的方法。

  • 有没有更直接的方法可以做到这一点?

有没有一种方法可以on_motion在我的kv文件中使用type事件来使用鼠标滚轮调整此值?

我给出了一个简单的示例,展示了我的kivy应用程序的结构-以及我尝试添加Scatter所做的事情。我想我需要将其放入自己的小部件中,以保持图像大小相同?

玩具实例

import kivy
from kivy.lang import Builder
from kivy.core.window import Window


kivy.require('1.1.0')

from kivy.app import App

presentation = Builder.load_file("scatter.kv")
class TestApp(App):
    def build(self):
        Window.clearcolor = (1, 1, 1, 1)
        return presentation

    # def foo():
    #    print("You've reached foo")    

if __name__ == '__main__':
    TestApp().run()
Run Code Online (Sandbox Code Playgroud)

#:kivy 1.10.0
GridLayout:
    cols: 2

    Scatter:
        scale: 5
        # on_motion: …
Run Code Online (Sandbox Code Playgroud)

python kivy kivy-language

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

将 numpy 3d 数组转换为 1d 的 2d 数组

如何将 3D numpy 数组转换为子维度数组?例如,我有一个形状为 (100,3,3) 的 3D numpy 数组,我想将其转换为 100 个形状为 (3,3) 的二维数组的向量?

python numpy

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