天道酬勤,学无止境

python-3.x

使用多处理的 Process 没有输出(No output from Process using multiprocessing)

问题 我是多处理的初学者,谁能告诉我为什么这不会产生任何输出? import multiprocessing def worker(num): """thread worker function""" print('Worker:', num) if __name__ == '__main__': jobs = [] for i in range(4): p = multiprocessing.Process(target=worker, args=(i,)) jobs.append(p) p.start() 回答1 您正在启动Process() ,但从不等待它完成,因此您的程序的执行在后台进程完成之前结束。 试试这个,调用 Process.join(): import multiprocessing import sys def worker(num): """thread worker function""" print('Worker:', num) sys.stdout.flush() if __name__ == '__main__': jobs = [] for i in range(4): p = multiprocessing.Process(target=worker, args=(i,)) jobs.append(p) p.start() map(lambda

2021-06-24 10:02:15    分类:技术分享    python   python-3.x   multiprocessing   python-idle   python-multiprocessing

为什么开始按钮不执行计数器功能(Why start button is not performing the counter functionality)

问题 from tkinter import * import tkinter as tk 创建计数器 def a(): def counter_label(label): counter=0 def count(): global counter counter += 1 label.config(text=str(counter)) label.after(1000,count) count() label=tk.Label(frame,fg="red") label.grid(row=0,column=1) def create_widgets_in_frame(): 为框架创建小部件 Label(frame,text="TIME:",padx=25,pady=50,font=("arial",20,"bold"),bg="red",width=10).grid(row=0,column=0,sticky=W) Button(frame,text="START",padx=25,pady=50,font=("arial",20,"bold"),command=a,bg="red",width=10).grid(row=1,column=0,sticky=E) Button(frame,text="STOP",padx=25,pady=50,font=("arial",20

2021-06-24 09:46:21    分类:技术分享    python-3.x   tkinter

OSError: [Errno 'jupyter-notebook' not found] 2

Hi I have installed "Anaconda3-4.3.1-Windows-x86_64" in my desktop but i get below error when I run the command "jupyter notebook" from CMD. Error: C:\Users\my pc>jupyter notebook Traceback (most recent call last): File "C:\Users\pr275959\AppData\Local\Continuum\Anaconda3\Scripts\jupyter-script.py", line 5, in <"module"> sys.exit(jupyter_core.command.main()) File "C:\Users\pr275959\AppData\Local\Continuum\Anaconda3\lib\site-packages\jupyter_core\command.py", line 186, in main _execvp(command, sys.argv[1:]) File "C:\Users\pr275959\AppData\Local\Continuum\Anaconda3\lib\site-packages\jupyter_core

2021-06-24 09:42:19    分类:问答    python   python-2.7   python-3.x   anaconda   sublime-anaconda

检查 Pygame 版本(Checking Pygame Version)

问题 我对 Python 和 Pygame 都很陌生。 我在 Window 和Pygame 1.9.2 Python 3.5 上安装了Python 3.5.1 32 位。 但是如果我忘记了,有没有办法检查我从命令行或 Python IDLE 安装的 pygame 版本。 对于 Python,我使用python -V但对于 Pygame,我不知道如何使用。 如果我的问题很愚蠢,请提前抱歉。 回答1 使用这个: pip show <pack_name> 选择: pip freeze | grep <pack_name> 回答2 我知道这个问题已经有一年了,并且有一个公认的答案,但我在研究时偶然发现了另一种检查版本的方法。 您基本上从命令行导入 pygame 并键入此代码 pygame.version.ver 或者 pygame.version.vernum 第一个将版本作为字符串返回,第二个将其作为整数元组返回。 我从这里找到了这个,我知道这可能是不必要的,但无论如何我想包括它。 回答3 pip show pygame // command to check your pygame details 输出: Name: pygame Version: 1.9.4 Summary: Python Game Development Home-page: https://www.pygame

2021-06-24 09:41:12    分类:技术分享    python   python-3.x   pygame

使用python中的struct模块打包和解包可变长度数组/字符串(packing and unpacking variable length array/string using the struct module in python)

问题 我试图掌握 Python 3 中二进制数据的打包和解包。它实际上并不难理解,除了一个问题: 如果我有一个可变长度的文本字符串并且想以最优雅的方式打包和解包它怎么办? 据我从手册上看,我只能直接解压缩固定大小的字符串? 在这种情况下,是否有任何优雅的方法可以绕过这个限制而不填充大量不必要的零? 回答1 struct模块只支持固定长度的结构。 对于变长字符串,您的选择是: 动态构造您的格式字符串(在将str传递给pack()之前,必须将其转换为bytes ): s = bytes(s, 'utf-8') # Or other appropriate encoding struct.pack("I%ds" % (len(s),), len(s), s) 跳过struct并使用普通字符串方法将字符串添加到您的pack() -ed 输出中: struct.pack("I", len(s)) + s 对于解包,你只需要一次解包一点: (i,), data = struct.unpack("I", data[:4]), data[4:] s, data = data[:i], data[i:] 如果你做了很多这样的事情,你总是可以添加一个帮助函数,它使用calcsize来进行字符串切片: def unpack_helper(fmt, data): size = struct

2021-06-24 09:40:27    分类:技术分享    python   binary   struct   python-3.x

Qt GUI 可点击 Qframe 或 QWidget 或 Groupbox(Qt GUI clickable Qframe or QWidget or Groupbox)

问题 我的代码有问题:/我的程序需要单击 QFrame、QWidget 或 QGroupBox。 目前我使用 mouseReleaseEvent 但它仅在我的函数没有设置值时才有效。 def testc(self,e): print(e) #when I use this code: self.frame.mousePressEvent = self.testc; #it's okey #but when I'm using self.frame.mousePressEvent = self.testc("ssssss"); # after starting the function automatically performs a click not working 如何制作点击小部件、框架或分组框? 我的qt代码 # -*- coding: utf-8 -*- # Form implementation generated from reading ui file 'ar.ui' # # Created by: PyQt4 UI code generator 4.11.4 # # WARNING! All changes made in this file will be lost! from PyQt4 import QtCore, QtGui try: _fromUtf8

2021-06-24 09:31:34    分类:技术分享    python   qt   python-3.x

如何在 Windows 上运行 python dbus?(How could run python dbus on windows?)

问题 我是 dbus 概念的新手,我在 windows 上用 python 3.5.1 编程,我阅读了很多文档,但不知道 dbus 是否可以在 windows 上工作? 如果是这样,我尝试过哪个模块 pydubs,pymodbus,...请帮助我应该去 Linux 还是有解决方案? 回答1 据我所知,Windows 没有标准的 Python Dbus 库。 您可以使用此链接:我发现的唯一链接使其成为可能,但没有任何关于 Windows 上的 Python Dbus 代码的堆栈溢出线程/问题。 http://poquitopicante.blogspot.in/2012/07/building-dbus-python-on-windows-with.html 将它用于业余爱好项目以外的任何事情都可能使您陷入困境。 我建议如果 Dbus 是你需要工作的,你切换到 Linux,特别是如果 Python 是你必须这样做的方式。 此外,Windows 本身不支持 Dbus 作为 IPC。

2021-06-24 09:23:59    分类:技术分享    windows   python-3.x   DBUS

How do i add or import pyqt and sip to Python

im having trouble importing this. i am a newbie so please use layman words i can follow:p. riverbank said i need sip. but there is a sip folder in the pyqt download i installed, so do i have it already? there are some related questions on this site, which lead me to try these method:.. my pyqt folder is PyQt-win-gpl-4.9.4. so i typed: sys.path.append('C:\Program Files\PyQt-win-gpl-4.9.4\sip') this adds it fine, inside the 'sip' folder, it has a bunch of folders like QtCore etc.. and ive tried importing like this: from sip import QtCore ImportError: No module named sip or import sip ImportError

2021-06-24 09:15:37    分类:问答    user-interface   qt4   python-3.x   pyqt4

如何在 Python 中使用自定义谓词排序(How to use a custom predicate sort with Python)

问题 我有一个列表,如[[1,2,"s"],[1,5,"e"],...]其中第三个值始终是s或e 。 我如何调用sort()以便根据以下条件对列表进行排序: 第一个索引如果第一个索引相同,则s首先出现。 谢谢 回答1 编写自定义key函数。 def sort_key(list_): if list_[2] == 's': return (list_[0], 0) return (list_[0], 1) test_list = [[1, 2, 's'], [1, 5, 'e'], [2, 4, 'e'], [2, 3, 's']] test_list.sort(key=sort_key) # [[1, 2, 's'], [1, 5, 'e'], [2, 3, 's'], [2, 4, 'e']] 回答2 您可以将自定义键函数传递给 list.sort 用于生成项目的比较键: >>> l = [[1, 5, 'e'], [1, 2, 's'], [0, 4, 'e']] >>> l.sort(key=lambda x: (x[0], -ord(x[2]))) >>> l [[0, 4, 'e'], [1, 2, 's'], [1, 5, 'e']]

2021-06-24 09:14:47    分类:技术分享    python   sorting   python-3.x

Python Selenium - ResourceWarning: Enable tracemalloc to get the object allocation traceback

I am using BrowserStack to run Selenium scripts in Python. Keep in mind that I am new in Python, so maybe there is a simple solution to this that I am not seeing. You can see the code here When I run it, it always shows the following: How to I solve the "ResourceWarning: Enable tracemalloc to get the object allocation traceback" error? Do I need to install some package, enable something in the settings, or..? The tests always execute, as you can see at the bottom, but these Warnings always appear.

2021-06-24 09:12:39    分类:问答    python   python-3.x   browserstack