Python 2.7.8、Windows 7
我对 Tkinter 画布小部件进行了子类化,并添加了一个新方法来创建具有圆角边缘的矩形。
import Tkinter as tk
class MyCanvas(tk.Canvas):
def __init__(self, *args, **kwargs):
tk.Canvas.__init__(self, *args, **kwargs)
def create_rounded(self, x1, y1, x2, y2, r):
self.create_arc(x1, y1, x1+r, y1+r, start=90, extent=90, style=tk.ARC)
self.create_arc(x2-r, y1, x2, y1+r, start=0, extent=90, style=tk.ARC)
self.create_arc(x1, y2-r, x1+r, y2, start=180, extent=90, style=tk.ARC)
self.create_arc(x2-r, y2-r, x2, y2, start=270, extent=90, style=tk.ARC)
self.create_line(x1+r/2, y1, x2-r/2, y1)
self.create_line(x1, y1+r/2, x1, y2-r/2)
self.create_line(x1+r/2, y2, x2-r/2, y2)
self.create_line(x2, y1+r/2, x2, y2-r/2)
Run Code Online (Sandbox Code Playgroud)
我想用单一颜色填充我创建的圆角矩形。我该怎么办呢。
我正在为我一直在开发的库编写一些测试。它具有以下结构。
lib
|---__init__.py
|---mod1.py
|---mod2.py
|---mod3.py
tests
|---__init__.py
|---test_mod1.py
Run Code Online (Sandbox Code Playgroud)
在测试文件夹的init .py 中,我将库的路径添加到sys.path变量中,并进行了所有导入。IE from lib import mod1, mod2, mod3。在test_mod1.py中我做了from . import mod1
现在的问题是我想修补mod1.py中的一个函数。我尝试过mock.patch('mod1.func1'),但没有成功,然后我也尝试过mock.patch('.mod1.func1'),也没有成功。如何确定补丁的目标?
我创建了一个名为 的用户定义函数,SheetAtIndex该函数返回工作簿中指定索引处的工作表名称。
起初我习惯于ActiveWorkbook.Sheets(Index).Name获取该表的名称。每当我切换到另一个打开的工作簿时,结果都会变得混乱。这并不奇怪。
ThisWorkbook.Sheets(Index).Name工作了一段时间,直到我意识到我必须在每个需要 UDF 的工作簿中复制代码。此外,每个需要该功能的文件都必须保存为启用宏的工作簿
最终决定:将该函数放入我个人的宏书中。
问题:如何引用调用函数的工作簿/工作表?
我在PyCharm中编写了一些python代码.当我写下面的测试时,它会给我一个警告.
return factor >= 1.0 and factor <= 2.0
Run Code Online (Sandbox Code Playgroud)
有关警告的信息显示它正在显示,因为可以简化比较.有没有更好的方法来编写这种比较.
