小编Ivo*_*Ivo的帖子

python通过通配符复制文件

我正在学习python(python 3),我可以通过执行此操作将1个文件复制到新目录

import shutil 
shutil.copyfile('C:/test/test.txt', 'C:/lol/test.txt')
Run Code Online (Sandbox Code Playgroud)

我现在要做的是将所有*.txt文件从C:/复制到C:/ test

*.txt是一个通配符,用于搜索硬盘上的所有文本文件

python glob copy file shutil

49
推荐指数
2
解决办法
4万
查看次数

QMainWindow只有QDockWidgets,没有中央小部件

我们有一个窗口,里面有几个组件QDockWidget.理想情况下,我们希望所有组件可以停靠,但有一个组件可能始终可见.所以我们制作了中央小部件.

但是,这不允许我们创建tabifyDockWidget包含此中央窗口小部件的可停靠窗口小部件的标签式堆栈(您可以通过调用创建).因此,我们尝试创建一个没有中央窗口小部件的UI,但有几个QDockWidget.

我在手册中找不到任何迹象,QDockWidget或者QMainWindow说这是不允许的情况.我们在Qt Designer中尽可能地创建,并且它似乎要求您有一个中央窗口小部件 - 正如它在手动编辑XML后崩溃所示.

问题是:拥有一个QMainWindow只有QDockWidgets而没有中央窗口小部件是合法的吗?Qt Designer是因为一个bug而崩溃,还是告诉我这是一个坏主意,我需要停止这样做?

qt4 pyqt4

19
推荐指数
2
解决办法
1万
查看次数

调试Qt信号,插槽和连接

有没有办法看到哪些信号被触发,以及是否有连接到它们的插槽?理想情况下,我们希望看到所有信号,而不仅仅是特定类或方法的信号; 例如,QSignalSpy只允许我们跟踪特定实例的特定信号.

在我们的应用程序中,由于信号从不同组件发出两次,我们已经看到了性能问题.最后,事实证明,有一个类的第二个实例应该只有一次.知道发出哪些信号确实有助于调试.

信号通过QMetaObject::invoke*,我希望找到一些东西可以挂钩,但我没有发现任何明显的东西.

c++ qt qt4 signals-slots

14
推荐指数
2
解决办法
7755
查看次数

使用__del__停止python线程

我在Python中有一个线程程序工作正常,但是一旦线程运行就不会调用__del__:

class tt(threading.Thread):
    def __init__(self):
        threading.Thread.__init__(self)
        self.stop_event = threading.Event()

    def __del__(self):
        print "Deleting"
        self.stop_event.set()
        time.sleep(5)

    def run(self):
        self.stop_event.clear()
        while not self.stop_event.isSet():
             self.do_stuff()
        threading.Thread.__init__(self)

    def stop(self):
        self.stop_event.set()
Run Code Online (Sandbox Code Playgroud)

例如,如果我这样做

tc = aa()
del tc 
Run Code Online (Sandbox Code Playgroud)

它工作正常(我得到删除消息暂停等).但是,如果我这样做:

tc = aa()
tc.start()
del tc
Run Code Online (Sandbox Code Playgroud)

然后__del__没有运行(注意当我执行tc.start(); tc.stop(); del tc时它会执行__del__.

我在ipython中运行它

python multithreading

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

标签 统计

python ×2

qt4 ×2

c++ ×1

copy ×1

file ×1

glob ×1

multithreading ×1

pyqt4 ×1

qt ×1

shutil ×1

signals-slots ×1