所以我有一个应用程序,我正在考虑从 PyQt4 迁移到 PySide。在这个应用程序中,我.ui
经常使用文件,使用模式如下:
class BaseGUIWidget(QWidget):
def __init__(self, parent = None, ui_file = None):
'''
:param parent: parent widget of this widget
:param ui_file: path to UI file to load (optional)
'''
super(BaseGUIWidget, self).__init__(parent)
if ui_file is not None:
uic.loadUi(ui_file, self)
Run Code Online (Sandbox Code Playgroud)
假设我有类似的班QFrame
,QMainWindow
,QGroupBox
,等。
这允许我创建使用来自 UI 文件的数据的 Python 类,以及我在代码中手动添加的任何附加功能。本质上,我的BaseGUIWidget
类就像扩展 UI 文件生成的类一样。应用程序中的许多功能都非常依赖于这种行为。
但是,据我所知,PySideQUIloader
没有类似的功能。不是将 UI 文件的内容“填充”到您的类中,它只是在内部从 UI 文件构建一个小部件,然后返回它,然后您将它嵌入到您的小部件中,layout
就像任何其他小部件一样。,IE:
class BaseGUIWidget(QWidget):
def __init__(self, parent = None, ui_file = None):
'''
:param …
Run Code Online (Sandbox Code Playgroud) Java帮助我们使用创建匿名对象
new class_name();
Run Code Online (Sandbox Code Playgroud)
声明并使用关联(.)运算符调用方法
new Emp().input();
Run Code Online (Sandbox Code Playgroud)
我怎么能同时使用它来调用两种方法从一个匿名对象调用一样都input()
和show()
在一起?
我正在运行IPython 2.0b1代码,以便我可以使用本机QtInProcessKernelManager
在Qt应用程序中嵌入IPython shell.按照embedded_qtconsole.py中的示例,我已经完成了所有工作,但我无法弄清楚如何设置内核使用的IPython配置文件.不幸的是,2.0版本的文档非常稀疏,但是因为它还没有发布,所以可以理解,并且挖掘源代码也没有多大帮助.
在IPython 1.12/13中以旧的"非官方"方式进行,您可以通过以下方式进行设置:
app = IPKernelApp.instance()
app.initialize(['--profile={0}'.format(__PROFILE_NAME__)])
Run Code Online (Sandbox Code Playgroud)
但是我已经尝试了传递不同参数的每种组合
kernel_manager = QtInProcessKernelManager()
kernel_manager.start_kernel()
Run Code Online (Sandbox Code Playgroud)
没有运气.我确定我只是错过了一些简单的东西,所以希望它能快速解决.
我有一个声明性的类结构,如下所示:
class BaseClass(Base):
Column A
Column B
class Mixin(object):
Column C
class ItemA(BaseClass):
Column D
class ItemB(Mixin, BaseClass):
pass
class ItemC(Mixin, BaseClass):
Column E
Run Code Online (Sandbox Code Playgroud)
有没有一种方法可以with_polymorphic
使我基于Column C
所有对象进行查询Items
,而不必明确知道自己Item
拥有什么?本质上有点像
mixin_poly = with_polymorphic(base = BaseClass, classes = MixinClass.__subclasses__())
Run Code Online (Sandbox Code Playgroud)
假设在导入时,在声明MixinClass
之前,所有的导数都已导入with_polymorphic
。
编辑 注意,我已经省略了连接表继承的样板,但是假设它已经正确设置,可以执行
poly_base = with_polymorphic(base = BaseClass, classes = '*')
session.query(poly_base).filter(BaseClass.a == value, ...)
Run Code Online (Sandbox Code Playgroud)
执行预期的查询列BaseClass
。关键是能够查询Mixin
以相同方式继承该类的子类中的公共列。
我有以下代码,它会产生错误:
import math
def pen_checker(number):
print(number)
for x in range(1, number):
y = x*(3*x-1)/2
if(number == y):
return True
return False
def pen_calculator(n):
x = n*(3*n-1)/2
return x
def main():
pen1 = 1
pen2 = 1
pen1_val = 0
pen2_val = 0
crt_sum = 0
crt_dif = 0
MAX_CAP = 1000
for pen1 in range(1, MAX_CAP):
pen1_val = pen_calculator(pen1)
for pen2 in range(1, MAX_CAP):
pen2_val = pen_calculator(pen2)
z = pen1_val + pen2_val
if(pen_checker(z)== True and pen_checker(fabs(pen1_val-pen2_val))== True):
print(fabs((pen1_val-pen2_val)))
main()
Run Code Online (Sandbox Code Playgroud)
由于某种原因,该函数 …