我正在使用一个名为customDialog的类,它基于http://effbot.org/tkinterbook/tkinter-dialog-windows.htm
.标准代码创建了一个子类Toplevel,并创建模态对话框.我正在尝试调整代码,以便它也可以创建无模式对话框.标准代码调用Toplevel构造函数,创建对话框,然后 self.wait_window(self)在最后执行,等待对话窗口被关闭.但我没有成功.
我天真的尝试是简单地跳过wait_window()(这是我的代码中的尝试在下面剪断).我尝试过其他一些东西,但对话框仍然是模态的,也就是说,我无法与应用程序的主窗口进行交互.是什么迫使它是模态的?通常,对话框包含小部件和几个按钮.
class Dialog(Toplevel):
def __init__(self, parent, title = None,modal=True):
Toplevel.__init__(self, parent)
self.transient(parent)
if title:
self.title(title)
self.parent = parent
self.result = None
body = Frame(self)
#register validators
self.validatePosInt = (body.register(self.OnValidatePosInt),
'%d', '%i', '%P', '%s', '%S', '%v', '%V', '%W')
self.initial_focus = self.body(body) #this calls the body function which is overridden, and which draws the dialog
body.grid()
self.buttonbox()
self.grab_set()
if not self.initial_focus:
self.initial_focus = self
self.protocol("WM_DELETE_WINDOW", self.cancel)
self.geometry("+%d+%d" % (parent.winfo_rootx()+50,
parent.winfo_rooty()+50))
self.initial_focus.focus_set() …Run Code Online (Sandbox Code Playgroud) 我想使用flask-security。我正在使用模板烧瓶应用程序,该应用程序创建扩展的全局对象,然后在创建应用程序时对其进行初始化。例如在extensions.py中,有如下代码:
from flask_bcrypt import Bcrypt
from flask_caching import Cache ...
from flask_security import Security ...
bcrypt = Bcrypt() ...
security = Security()
Run Code Online (Sandbox Code Playgroud)
然后在app.py调用register_extensions(app)中使用如下init_app(app)方法:
bcrypt.init_app(app)
security.init_app(app)
Run Code Online (Sandbox Code Playgroud)
实际上,烧瓶安全性是一种init_app()方法。但是文档说安全对象需要一个数据存储对象,该对象需要用户和角色模型。到目前为止,没有其他扩展程序需要将用户和角色模型导入app.py中是不合适的。
在使用“大型Flask应用程序”模型时,使用Flask-Security的最佳实践是什么?我认为文档没有帮助。当所有对象都定义在一个地方时,这是一种简单的情况。
我正在使用 zeep。我使用的服务不时产生超时错误,我想使用自动重试功能。
我正在尝试使用请求重试会话,但没有捕获超时异常,也没有尝试重试。
我设置了一个请求重试会话(如下),并设置了我的类的客户端属性(当前使用超时值导致错误):
session = requests_retry_session()
transport = Transport(session=session,timeout=20,operation_timeout=.001)
self.client = Client(self.wsdl_url,transport=transport)
Run Code Online (Sandbox Code Playgroud)
...
def requests_retry_session(
retries=10,
backoff_factor=0.3,
status_forcelist=(500, 502, 503, 504),
session=None,
) -> requests.Session:
session = session or requests.Session()
retry = Retry(
total=retries,
read=retries,
connect=retries,
backoff_factor=backoff_factor,
status_forcelist=status_forcelist,
)
adapter = HTTPAdapter(max_retries=retry)
session.mount('http://', adapter)
session.mount('https://', adapter)
return session
Run Code Online (Sandbox Code Playgroud)
我收到 requests.exceptions.ReadTimeout (我假设这个错误与我在现实生活中遇到的错误相同,但是超时 20 秒,我的日志记录还不够好,尚无法确定)
会话未处理异常。
为什么不?
编辑:zeep 在某处发送 POST 请求,我在自己的调试中没有找到,但在 Requests 中激活调试日志显示了它。
默认情况下,重试不适用于 POST。
https://urllib3.readthedocs.io/en/latest/reference/urllib3.util.html
我设置了 method_whitelist=False 来改变它,现在我正在触发重试。
我的Eclipse 3.6/PyDev设置只是将pydev升级到1.6.0.2010071813并且调试不再有效.我的默认python解释器是3.1虽然我怀疑这很重要.在pydev的Eclipse升级之前,它运行得非常好.
我在文本中有一个带有= = 1链接的页面,显示"显示费用".我可以找到第一个这样的链接
firstLink = br.find_link(text_regex=re.compile("Display charges"),nr=0)
Run Code Online (Sandbox Code Playgroud)
我希望能够找到最后的链接.我希望这会奏效
lastLink = br.find_link(text_regex=re.compile("Display charges"),nr=-1)
Run Code Online (Sandbox Code Playgroud)
但是在只有一个匹配链接的情况下,它就失败了.
请注意:Python和机械化初学者但已发现帮助(mechanize.Browser),这是一个重大突破:)
我正在尝试将一个python程序从OS X移植到Windows 7.该程序使用tkinter处理png,例如
self.logoImg = ImageTk.PhotoImage(Image.open('GrowthPathLogo.png'))
Run Code Online (Sandbox Code Playgroud)
代码失败,IOError:解码器zip不可用
我尝试用pypm安装pip.然后我尝试用pip构建它.在构建过程结束时,它报告不支持png/zlib
我在Windows上安装了python.org时遇到了同样的错误.
我被困住了,我不擅长构建C库.我也不知道pip是如何工作的.我安装了一个gnu zlib库,但它根本没有帮助.我安装了Visual C++ 2008 Express,至少可以正常工作,因为pip会成功编译.
python windows activestate activepython python-imaging-library
在Excel宏中,我有一个定义的函数,就像返回一个Recordset一样
Function GetCommissionDataRecordset(doctorCode As String) As ADODB.Recordset
Set GetCommissionDataRecordset = New ADODB.Recordset
.
. ' setup the connection and SQL string...
.
GetCommissionDataRecordset.Open strSQL
end function
Run Code Online (Sandbox Code Playgroud)
我试图像这样调用函数
sub tester()
'Dim oRecSet As ADODB.Recordset ' this doesn't work, needs to be a variant
Dim oRecSet As Variant
Set oRecSet = GetCommissionDataRecordset("GC")
'Copy Data to Excel'
ActiveSheet.Range("a1").CopyFromRecordset (oRecSet)
end sub
Run Code Online (Sandbox Code Playgroud)
如果在tester我定义的子过程中oRecSet as ADODB.Recordset,我在执行时遇到运行时错误CopyFromRecordset.
当我定义oRecSet为a 时,错误消失了Variant.
运行时错误是430 Class does not support Automation …
使用此代码片段,我希望标签的背景颜色为红色.def createWidgets(self):
style = ttk.Style()
style.configure("Red.TLabel", foreground="green", background="red")
self.label1 = ttk.Label(textvariable=self.numberArray[0][0],style="Red.TLabel")
self.label1.pack()
Run Code Online (Sandbox Code Playgroud)
我得到绿色前景色但我无法改变背景色.这是在OS X上.我正在使用ActiveState的tcl和python.Python 3.2和2.7也出现同样的问题
蟒蛇 2.7.3
>>> print '%2.2f' % 0.1
0.10
Run Code Online (Sandbox Code Playgroud)
我的文档说类型 % 应该与类型 f 相同,只是输入乘以 100。
>>> print '%2.2%' % 0.1
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: not all arguments converted during string formatting
Run Code Online (Sandbox Code Playgroud) 我需要以单用户模式启动 postgresql 服务器,以便恢复超级用户角色。在本例中,它是 postgres10 的标准 docker 镜像
我猛击容器。作为用户 postgres 和 /usr/lib/postgresql/10/bin 我这样做:
./pg_ctl stop -D /var/lib/postgresql/data
Run Code Online (Sandbox Code Playgroud)
作为以单一模式启动之前的第一步。
我看到正在等待服务器关闭...
然后我就被甩回主人那里了。
我发现这与重启政策无关。
编辑:postgresql 服务器进程的 pid 1 因此容器在 postgresql 停止时退出。
python ×7
tkinter ×2
activepython ×1
activestate ×1
dialog ×1
docker ×1
eclipse ×1
excel ×1
excel-vba ×1
flask ×1
macos ×1
mechanize ×1
non-modal ×1
postgresql ×1
pydev ×1
python-2.7 ×1
ttk ×1
vba ×1
windows ×1
zeep ×1