小编GLH*_*LHF的帖子

读取输入后隐藏控制台窗口

我有一个带有GUI的脚本,它接收用户数据并将其存储到文本文件中.它运行另一个脚本(.exe),等待用户输入然后执行一些操作.我想要的是后一个脚本在读取用户输入后隐藏其控制台窗口,但继续在后台工作.

我尝试用subprocess.call('lastscript.exe', shell=True)或运行该脚本subprocess.Popen('lastscript.exe', shell=True).这不起作用.我不得不采取从用户输入的第一个,然后隐藏控制台,让在后台的工作方案.

python windows windows-console python-3.4

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

如何使用Python和OpenCV进行像素总和

我有一个图像,想要找到它的一部分的总和,然后与阈值进行比较。我在图像上绘制了一个矩形,这是我需要应用总和的区域。我知道 cv2.integral 函数,但这给了我一个矩阵。您有什么建议吗?

python opencv pixel integral

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

这个过程的逻辑是什么

我正在解决Project Euler 中的一个问题;我在 SO 中发现了一个问题。问题和接受的答案说;

n = 600851475143 
i = 2

while i * i < n:
    while n%i == 0:
        n = n / i
    i = i + 1

print (n)
Run Code Online (Sandbox Code Playgroud)

这太棒了。我还是不明白这个过程怎么这么快,竟然能在 0.00001 秒内找到 6000 亿的最大质因数。我为此尝试了大量方法和代码,过程耗时超过 1 小时。

谁能向我解释这些代码的逻辑以及为什么它超快?被while循环有Python中一个特殊的地方?

python math mathematical-optimization while-loop python-3.4

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

PyQt5可拖动无框窗口

我找到了一个在无框窗口上设置边框的示例,但是它不是可拖动的。如何使无框窗口可拖动?特别是如果我能看到一个例子,那就太好了。这是我的示例代码(通常代码更长,这就是为什么很多库不介意的原因);

from PyQt5.QtWidgets import (QMessageBox,QApplication, QWidget, QToolTip, QPushButton,
                             QDesktopWidget, QMainWindow, QAction, qApp, QToolBar, QVBoxLayout,
                             QComboBox,QLabel,QLineEdit,QGridLayout,QMenuBar,QMenu,QStatusBar,
                             QTextEdit,QDialog,QFrame,QProgressBar
                             )
from PyQt5 import QtCore, QtWidgets, QtGui
from PyQt5.QtGui import QIcon,QFont,QPixmap,QPalette
from PyQt5.QtCore import QCoreApplication, Qt,QBasicTimer

import sys

class cssden(QMainWindow):
    def __init__(self):
        super().__init__()


        self.mwidget = QMainWindow(self)
        self.setWindowFlags(QtCore.Qt.FramelessWindowHint)


        #size
        self.setFixedSize(320, 450)
        self.center


        #label
        self.lbl = QLabel(self)
        self.lbl.setText("test")
        self.lbl.setStyleSheet("background-color: rgb(0,0,0);"
                               "border: 1px solid red;"
                               "color: rgb(255,255,255);"
                               "font: bold italic 20pt 'Times New Roman';")
        self.lbl.setGeometry(5,5,60,40)

        self.show()

    #center
    def center(self):
        qr = self.frameGeometry()
        cp = QDesktopWidget().availableGeometry().center()
        qr.moveCenter(cp)
        self.move(qr.topLeft()) …
Run Code Online (Sandbox Code Playgroud)

python windows qmainwindow python-3.4 pyqt5

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

我该如何安装cython

在Windows上安装Kivy的过程中,我发现我需要Cython.

  • 我尝试使用它安装它easy_install cython,但这给出了以下错误:error: Unable to find vcvarsall.bat
  • 我从Cython的官方页面下载了软件包,但是在尝试运行时python setup.py install,我看到了同样的错误.

我该如何安装Cython?没有这个'vcvarsall.bat'错误.

我正在运行Windows 32位.

在此输入图像描述

在此输入图像描述

python windows download cython python-3.x

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

为什么Python在交换变量时交换变量id

我认为每个对象都id基于密钥.

>>> a = 10
>>> b = 20
>>> id(a)
1876869280
>>> id(b)
1876869440
>>> a,b=b,a
>>> id(a)
1876869440
>>> id(b)
1876869280
Run Code Online (Sandbox Code Playgroud)

交换变量时,它们的ID也会被交换.如果每个对象都有唯一的id,那么为什么要交换id?交换后我想id(a)并且id(b)会一样.

python swap identify

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

在Python中使用rot13编码的文件是什么?名称是什么?

我记得Python something.py中有一个文件有rot13编码.它有for循环和变量等d,c.任何人都可以告诉我该文件的名称和它在Python 3.5中的位置?

编辑:这是一个Python附带的模块,而不是第三方.

python rot13 python-3.x

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

如何自动制作 QLineEdit-QCompleter 上划线

我有一个文本列表,如果用户在 中搜索文本QLineEdit,我会打印该文本。有一个QCompleterQLineEdit

问题是,正如我们所知Texttext它们并不相同,但对用户来说是相同的。因此,如果用户开始打字Text或者text,我想将其更改为TEXT实时QLineEdit。因此,每当用户键入字母时,我都希望在QCompleter-中将其设为大写QLineEdit。我怎样才能做到这一点?我有这个自动取款机;

from PyQt5.QtWidgets import QApplication,QPushButton,QMainWindow,QLabel,QLineEdit,QCompleter
from PyQt5 import QtCore, QtWidgets, QtGui
from PyQt5.QtCore import QPoint
import sys

class cssden(QMainWindow):
    def __init__(self):
        super().__init__()
        self.mwidget = QMainWindow(self)
        self.setWindowFlags(QtCore.Qt.FramelessWindowHint)

        #size
        self.setFixedSize(600,400)

        #LINE EDIT QCOMPLETER
        self.label = QLineEdit(self)
        self.label.setGeometry(100,100,300,30)
        self.label.setStyleSheet("color: red;"
                                "font: bold 15pt 'Arial';")

        self.t = ["Hello","hi","Hey"]
        self.label.setCompleter(QCompleter(self.t, self))

        #BUTTON
        self.buton = QPushButton(self)
        self.buton.setText("Click")
        self.buton.setGeometry(200,140,90,50)

        self.buton.clicked.connect(self.hangiButon)

        #SET LABEL
        self.set_label …
Run Code Online (Sandbox Code Playgroud)

python qcompleter qlineedit python-3.4 pyqt5

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

为什么lambda不会改变变量的值

我有一些问题需要理解lambda.我的观点是1在lambda中添加一个变量直到某个点.例;

x = 0
t = lambda y: y+1

while True:
    print ("Hello")
    t(x)
    if x==5: break
Run Code Online (Sandbox Code Playgroud)

我以为它会在5次后停止,但我意识到lambda只加1次.而这个while循环是无限的.这是为什么?为什么lambda在循环完成之前不会向该变量添加1 x += 1

python lambda python-3.5

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

通过 .py 脚本执行的 .exe 文件隐藏控制台窗口

我试图隐藏从 EXE 文件弹出的控制台窗口。我正在从我自己的 EXE(通过 PyInstaller 冻结的 Python 脚本)运行这个 EXE。

我发现,每当我通过 IDLE 或 PyCharm 运行脚本时,我都可以隐藏控制台窗口,并且一切正常。但是,如果我将脚本转换为 EXE(使用pyinstaller --onefile),则它不起作用。

我尝试了几乎所有 Google 和 SO 对我对这个问题的搜索的响应,但我仍然不知道如果我将脚本转换为 EXE 文件并运行它,我该如何隐藏控制台窗口。

我试过的最后一个:

import subprocess
import win32gui
import time

proc = subprocess.Popen(["MyExe.exe"])
# lets wait a bit to app to start
time.sleep(3)

def enumWindowFunc(hwnd, windowList):
    """ win32gui.EnumWindows() callback """
    text = win32gui.GetWindowText(hwnd)
    className = win32gui.GetClassName(hwnd)
    #print hwnd, text, className
    if text.find("MyExe.exe") >= 0:
        windowList.append((hwnd, text, className))

myWindows = []
# enumerate thru all top windows and get …
Run Code Online (Sandbox Code Playgroud)

python windows windows-console python-3.5

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

令人讨厌的编码问题

我检查了这个解决方案,找不到任何有用的问题.我必须使用土耳其语字符,比如"?,?,?,?,ü,Ü,ö,Ö,ç,Ç"当我打开文件并在文件中写入内容时.但这是我的问题:

with open("file1.txt","a","utf-8-sig") as f:
    f.write(u"????????üüüÜÜ???ii")
Run Code Online (Sandbox Code Playgroud)

我每次都会收到此错误:

  with open("file1.txt","a","utf-8-sig") as f:
TypeError: an integer is required
Run Code Online (Sandbox Code Playgroud)

真的很烦人.我尝试了一切.

这就是我启动Python脚本的方法:

# -*- coding: cp1254 -*-
#!/usr/bin/env python
# -*-coding:utf-8-*-
from __future__ import division
import locale
locale.setlocale(locale.LC_ALL, '')
Run Code Online (Sandbox Code Playgroud)

我无法编码文件.如果我试试这个:

with open("file1.txt","a",encoding="utf-8-sig") as f:
Run Code Online (Sandbox Code Playgroud)

我收到了这个错误:

TypeError: 'encoding' is an invalid keyword argument for this function
Run Code Online (Sandbox Code Playgroud)

在Pyhon3x中我可以做什么编码?

python windows encoding character python-2.7

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