小编Tra*_*son的帖子

concurrent.futures.ThreadPoolExecutor.map():超时无效

import concurrent.futures
import time 

def process_one(i):
    try:                                                                             
        print("dealing with {}".format(i))                                           
        time.sleep(50)
        print("{} Done.".format(i))                                                  
    except Exception as e:                                                           
        print(e)

def process_many():
    with concurrent.futures.ThreadPoolExecutor(max_workers=MAX_WORKERS) as executor: 
        executor.map(process_one,
                range(100),                                                          
                timeout=3)                                                           


if __name__ == '__main__':                                                           
    MAX_WORKERS = 10
    try:
        process_many()
    except Exception as e:                                                           
        print(e)      
Run Code Online (Sandbox Code Playgroud)

文件说:

返回的迭代器引发一个concurrent.futures.TimeoutErrorif __next__()被调用,结果timeout在原始调用的秒数之后不可用Executor.map()

但是这里的脚本没有引发任何异常并且一直在等待.有什么建议?

python concurrency concurrent.futures

15
推荐指数
1
解决办法
1306
查看次数

如何在PyQt4中创建QString?

>>> from PyQt4 import QtCore
>>> str = QtCore.QString('Hello')
AttributeError: 'module' object has no attribute 'QString'

>>> QtCore.QString._init_(self)
AttributeError: 'module' object has no attribute 'QString' 
Run Code Online (Sandbox Code Playgroud)

是的,我读过QString Class Reference

为什么我不能导入QString来自QtCore,如文档指定?

python user-interface pyqt

13
推荐指数
3
解决办法
4万
查看次数

如何在PyQt4创建的GUI中以富格式显示一些不可编辑的文本?

我有一些python代码生成一些我希望能够在窗口中打印或显示的信息.

整个窗口将用于显示格式丰富的文本(粗体,斜体,彩色字体,各种字体大小等).该文本也应该是只读的.此外,光标不应该是可见的.就像在网络浏览器中一样.

我应该使用哪个PyQt类?如果可以使用QTextEdit,请告诉我如何使它只读,并将各种格式应用于文本.如果任何其他PyQt类更适合这个,请告诉我.

更新:我发现这个类:http: //pyqt.sourceforge.net/Docs/PyQt4/qtextdocument.html 它说

QTextDocument是结构化富文本文档的容器,为样式化文本和各种类型的文档元素(如列表,表格,框架和图像)提供支持.它们可以创建用于QTextEdit,也可以单独使用.

使用QTextDocument类而不是QTextEdit直接使用是否有优势?

python user-interface pyqt pyqt4

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

python'import'可以扩展到zip以外的其他存档类型吗?

zipimport标准导入会自动使用该模块来处理.zipsys.path元素.

是否可以添加钩子来支持其他文件类型?例如一个处理程序.tar.gz

例如,如果sys.path包含/path/to/archive.tar.gz或者/path/to/archive.xyz可以提供处理程序来打开和读取.tar.gz.xyz文件.

python python-2.7

7
推荐指数
1
解决办法
86
查看次数

操作数与赋值不兼容

我有以下代码:

struct something {
  char *(*choices)[2];
};
char* arr[2] = {"foo", "bar"};

int main(void) {
  struct something obj;
  obj.choices = &arr;
  return 0;
}
Run Code Online (Sandbox Code Playgroud)

当我使用普通的C编译器(gcc)进行编译时,没有任何错误。但是,我正在为Z80进行编译,它会引发一个ERROR (152) Operands are not assignment compatible,其描述为:

试图分配一个不能将其类型提升为目标类型的值。

我不明白&arr和的类型char *(*choices)[2]会有何不同。我该怎么做才能解决此问题?

(我正在使用Zilog z80编译器,它是ZDS 5.2.0的一部分)

c z80

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

如何在 PyQt4 的 QWidget 中使用 QPainter

我下面的代码当前打开一个空白的 500x500 QMainWindow。

我只是想使用 QPainter 在 QWidget 中画一个圆圈。

这是我的代码:

from PyQt4 import QtCore, QtGui, Qt
from PyQt4.QtGui import QApplication, QMainWindow
import sys


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.resize(500, 500)
        self.centralwidget = QtGui.QWidget(MainWindow)
        self.horizontalLayout = QtGui.QHBoxLayout(self.centralwidget)
        MainWindow.setCentralWidget(self.centralwidget)
        self.menubar = QtGui.QMenuBar(MainWindow)
        self.menubar.setGeometry(QtCore.QRect(0, 0, 500, 22))
        MainWindow.setMenuBar(self.menubar)
        self.statusbar = QtGui.QStatusBar(MainWindow)
        MainWindow.setStatusBar(self.statusbar)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

class MyMainScreen(QMainWindow):
    def __init__(self, parent=None):
        QtGui.QMainWindow.__init__(self, parent)
        self.ui = Ui_MainWindow()  # This is from a python export from QtDesigner
        self.ui.setupUi(self)

        self.paintCircle()


    def paintCircle(self):
        self.painter = QtGui.QPainter(self)
        self.painter.begin(self)
        self.painter.setPen(Qt.QPen(Qt.QColor.black))
        # painter.end()
        self.painter.drawArc(QtCore.QRectF(250, …
Run Code Online (Sandbox Code Playgroud)

python pyqt pyqt4 qpainter

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

欧几里德最小生成树和Delaunay三角剖分

我想根据2D平面上一组点之间的欧氏距离计算最小生成树.我当前的代码存储了所有边,然后执行Prim的算法以获得最小的生成树.但是,我知道这样做会O(n^2)占用所有边缘的空间.

在做了一些研究之后,如果我首先在这组点上计算delaunay三角剖分,然后通过在三角剖分的边缘上运行Prim或Kruskal算法来获得最小生成树,那么很明显可以优化内存和运行时.

这是编程竞赛的一部分(https://prologin.org/train/2017/qualification/taxi_des_neiges),所以我怀疑我能否使用scipy.spatial.有没有其他方法可以简单地获得Delaunay三角剖分中包含的边缘?

提前致谢.

python delaunay minimum-spanning-tree euclidean-distance

3
推荐指数
1
解决办法
695
查看次数

在python pyqt4中明确设置样式表?

在pyqt中,设置样式表的标准方法如下:

MainWindow.setStyleSheet(_fromUtf8("/*\n"
"gridline-color: rgb(85, 170, 255);\n"
"QToolTip\n"
"{\n"
"    border: 1px solid #76797C;\n"
"    background-color: rgb(90, 102, 117);;\n"
"    color: white;\n"
"    padding: 5px;\n"
"    opacity: 200;\n"
"}\n"
"#label_3{\n"
"    background-color:rgb(90, 102, 117);\n"
"    color:white;\n"
"    padding-left:20px;\n"
" \n"
"}\n"
"#label_2{\n"
"    color:white;\n"
"    padding-left:20px;\n"
" \n"
"}\n"
Run Code Online (Sandbox Code Playgroud)

但是就像我们在html中链接样式表 <link rel="stylesheet" href="style.css"> 一样,在pyqt中不能做同样的事情吗?它有助于组织事物。

python pyqt pyqt4 qtstylesheets

0
推荐指数
1
解决办法
1587
查看次数