Articles of python

python阅读HID

我想做一个程序,从附加到Linux系统的HIDinput,并从这些程序生成MIDI。 我在MIDI方面没问题,但我在HID方面苦苦挣扎。 虽然这种方法工作正常(从这里采取): #!/usr/bin/python2 import struct inputDevice = "/dev/input/event0" #keyboard on my system inputEventFormat = 'iihhi' inputEventSize = 16 file = open(inputDevice, "rb") # standard binary file input event = file.read(inputEventSize) while event: (time1, time2, type, code, value) = struct.unpack(inputEventFormat, event) print type,code,value event = file.read(inputEventSize) file.close() 当有很多事件时,CPU使用率会很高; 特别是如果跟踪鼠标,大型移动占用我系统上近50%的CPU。 我猜是因为这个时候的结构。 那么,有没有更好的方法来做到这一点在Python? 我最好不要使用非维护或旧的库,因为我希望能够分发这个代码,并使它在现代发行版上工作(所以最终用户的包pipe理器中最终的依赖关系应该很容易得到)

Pythonsubprocess在返回输出之前在后台运行

我有一些我想用perf进行debugging的Python代码。 为此,我想使用subprocess。 以下命令返回进程的指令相关信息,直到通过Ctrl ^ C退出命令。 perf stat -p <my_pid> 现在,我想在后台运行Python代码,直到我希望能够终止它的操作并打印命令输出。 展现我的意思: x = subprocess.call(["perf","stat","-p",str(GetMyProcessID())]) .. CODE TO DEBUG .. print x # I want to terminate subprocess here and output 'x' 现在,我想确定在'print x'行中要做些什么来终止进程并检查输出。 任何想法/帮助表示赞赏。 欢呼声和感谢提前,

Python,gevent,urllib2.urlopen.read(),下载加速器

我正在尝试为Linux构build一个下载加速器。 我的程序使用gevent,os和urllib2。 我的程序收到一个URL并尝试同时下载文件。 我所有的代码都是有效的。 我唯一的问题是,urllib2.urlopen.read()阻止我同时运行.read()函数。 这是抛出我的例外。 Traceback (most recent call last): File "/usr/lib/pymodules/python2.7/gevent/greenlet.py", line 405, in run result = self._run(*self.args, **self.kwargs) File "gevent_concurrent_downloader.py", line 94, in childTasklet _tempRead = handle.read(divisor) # Read/Download part File "/usr/lib/python2.7/socket.py", line 380, in read data = self._sock.recv(left) File "/usr/lib/python2.7/httplib.py", line 561, in read s = self.fp.read(amt) File "/usr/lib/python2.7/socket.py", line 380, […]

python pygtk如何在特定的显示器上放置一个窗口

我在基于OS Linux(suse,ubuntu)上使用Python PyGTK库在具有多个显示监视器的设备上工作。 我试图把一个全屏窗口(在python,gtk.Window)连接到设备的特定显示监视器。 我使用下面的代码: n_monitors = gtk.gdk.Screen.get_n_monitors() # Get number of monitors. gtk.gdk.Screen.get_monitor_geometry(*monitor_number*) # Get the size of a specific monitor. 第二个API返回监视器大小和偏移量信息。 gtk.Window.move(offset_x, offse_y)可用于在特定监视器上移动窗口。 虽然这似乎并不一直工作。 它看起来像窗口有鼠标位置的亲和力,或者如果显示器的分辨率不一样,这是行不通的。 有没有GTK.Window的任何属性,这将有助于缓解这个问题。 我试图玩下面的没有帮助: gtk.Window.set_position(gtk.WIN_POS_NONE) gtk.Window.set_gravity(gtk.gdk.GRAVITY_NORTH_WEST) 有任何想法吗。

在python的任意时间捕获用户input

有没有办法发送一个中断到python模块时,用户在控制台中input的东西? 例如,如果我正在运行一个无限的while循环,我可以用一个try /除了KeyboardInterrupt来包围它,然后在except块中做我需要做的事情。 有没有办法用任何input复制这个function? 控制顺序还是标准字符? 编辑:对不起,这是在Linux上

Python – 我如何删除窗口边框? 我已经从Qt导入用户界面到Python和应用setWindowFlags

如何使这个窗口无边界(删除最小化/最大化/closures)? 1 import sys 2 from PyQt4 import QtCore, QtGui 3 from qt import Ui_MainWindow 4 5 class StartQT4(QtGui.QMainWindow): 6 def __init__(self, parent=None): 7 QtGui.QWidget.__init__(self, parent) 8 self.ui = Ui_MainWindow() 9 self.ui.setupUi(self)) 10 11 if __name__ == "__main__": 12 app = QtGui.QApplication(sys.argv) 13 myapp = StartQT4() 14 myapp.show() 15 app.setWindowFlags(app.FramelessWindowHint) <<< does not working 16 […]

有没有可以configurationnetworking接口的IP地址的任何Python包?

我正在编写一个服务器应用程序,允许远程客户端显示/添加/更改/删除主机所在机器的networking接口的IP地址。 操作系统是Linux(CentOS 5.2),所以我可以通过简单的parsing和编辑configuration文件来实现。 但是有没有可以简化工作的软件包? 如果没有这样的软件包,如果我开源我的实现,将帮助其他人?

我可以从PHP调用python脚本或function

我有PHP页面列出备份与文件名和用户名。 备份是用python脚本完成的,但是用于web界面的我用php。 现在我想把设备放在网页上,在备份文件名旁边会出现一个名为restore的button,所有的home目录内容都被replace了。 我可以使用备份文件名,用户名等参数作为python函数,并恢复备份。 但我不知道如何通过PHP将variables传递给python

每个GNU / Linux发行版都有Python吗?

我想知道是否是预先安装的每个G / L分布上的Python。 为什么它在GNU / Linux上非常stream行,而不是在Windows上呢?

如何确定通过os.system启动的进程的PID

我想用程序启动几个子foo.py ,即模块foo.py启动foo.py几个实例。 由于我有时不得不手动终止进程,我需要进程id来执行kill命令。 即使整个设置是相当“脏”,是否有一个良好的pythonic方式来获得进程的pid ,如果进程是通过os.system启动? foo.py: import os import time os.system("python bar.py \"{0}\ &".format(str(argument))) time.sleep(3) pid = ??? os.system("kill -9 {0}".format(pid)) bar.py: import time print("bla") time.sleep(10) % within this time, the process should be killed print("blubb")