Articles of python

如何访问pybluez中的蓝牙低级function?

pybluez包装函数是否有较低级别的btfunction? 我找不到文档中的任何内容。 我需要使用的function与以下function相同: l2ping (single ping) hcitool cc hcitool rssi hcitool lq hcitool tpl hcitool dc 有没有办法从pybluez(或实际上任何其他包装和/或脚本语言)访问?

为什么读取文件再读取速度更快?

SIZE = 1<<16 def justread(file): with open(file, 'rb') as f: while f.read(SIZE): pass 我第一次在一个700MB的文件上运行这个function需要19秒。 当我重复 再次读取相同的文件所花费的时间下降到0.5secs。 我用很多文件重复了这一点,结果是相似的。 这里发生了什么?

套接字关机和重新绑定 – 如何避免漫长的等待?

我正在使用Python中的套接字,并在开发阶段,我需要杀死并频繁地重新启动我的程序。 问题是,一旦我的Python脚本死亡,我必须等待很长时间才能重新绑定侦听套接字。 这是一个重现问题的片段: #!/usr/bin/env python3 import socket s = socket.socket(socket.AF_INET, socket.SOCK_STREAM) s.bind((socket.gethostname(), 4321)) try: s.listen(5) while True: (a, b) = s.accept() print(a.recv(1000)) except KeyboardInterrupt: print("Closing") s.shutdown(socket.SHUT_RDWR) s.close() 打到Cz运行除了代码,调用shutdown和closefunction,但我不能重新启动我的程序,直到套接字超时(GNU / Linux环境)。 我怎样才能避免这一点?

使用超线程运行模拟运行时

我使用python / numpy / cython编写的模拟。 由于我需要对许多模拟运行进行平均,我使用多处理模块来批量运行所有单独的模拟运行。 在办公室,我有一个HT的i7-920工作站。 在家里我有一个没有的i5-560。 我以为我可以在办公室的每一批中运行两次仿真实例,并将运行时间减半。 令人惊讶的是,每个单独实例的运行时间与在家用工作站上运行的时间相比翻了一番。 在家里并行运行3个模拟实例需要8分钟,而在办公室运行6个实例需要15分钟。 使用'cat / proc / cpuinfo'我validation了'siblings'= 8和'cpu cores'= 4,所以启用了HT。 我没有意识到任何“运行时总体守恒定律”(尽pipe从科学的angular度来看它可能非常有趣:)),而在这里跳来跳去的人可能会对这个难题有所了解。

Linux:pipe入Python(ncurses)脚本,stdin和termios

显然,这几乎是“ 糟糕的pipe道filedescriptor从Python中的标准input读取时重复- Stack Overflow ”; 不过,我认为这个情况稍微复杂一些( 而且这不是Windows特有的,因为这个线程的结论是 )。 我正在尝试在Python中使用一个简单的脚本:我想为脚本提供input – 通过命令行参数; 或者通过将一个string“pipe”到这个脚本中 – 并使脚本使用cursesterminal接口显示这个inputstring。 完整的脚本,在这里被称为testcurses.py ,如下所示。 问题是,每当我尝试实际的pipe道,似乎搞乱标准input, curses窗口永远不会显示。 这是一个terminal输出: ## CASE 1: THROUGH COMMAND LINE ARGUMENT (arg being stdin): ## $ ./testcurses.py – ['-'] 1 stdout/stdin (obj): <open file '<stdout>', mode 'w' at 0xb77dc078> <open file '<stdin>', mode 'r' at 0xb77dc020> stdout/stdin (fn): 1 0 […]

在Python中设置硬件时钟?

如何在embedded式Linux系统上用Python设置硬件时钟?

Python – 是time.sleep(n)CPU密集?

我一直在用python脚本中的time.sleep(n)来使它在不同的时间间隔执行作业。 伪代码看起来像: total_jobs = […] next_jobs_to_run = next_closest(total_jobs) min_time_to_wait = closestTime(nextJobsToRun) wait until min_time_to_wait run them all get next jobs 总而言之,程序一直进行到下一个工作需要执行。 它运行这个工作,发现下一个工作要运行,然后睡觉,直到需要运行下一个工作(继续无限)。 我打算在Linux机器上运行这个 – 使用cron作业是一种可能性。 任何人都有意见吗?

有没有办法启动/停止与Python的Linux进程?

我希望能够启动一个进程,然后能够杀死它

在Linux中通过C ++(或python)访问多个键盘input

我想在自己的应用程序中读取连接到计算机的(最多4个)键盘的input。 我的情况 对于一个小事件,我想附加三个USB条形码扫描仪到笔记本电脑(有一个键盘) 默认情况下,条形码扫描器就像键盘一样工作。 如果扫描条形码,只需input数字并按下“返回”键。 这太好了,开箱即用。 对于我的应用程序,三个条形码扫描仪将同时工作,并可能与默认应用程序发生冲突。 此外,应该有意见在手提电脑键盘上手动input条形码。 目标 因此,我需要用我的自定义应用程序(C ++或python)读取四个键盘的input,并分别处理它们。 环境 我的具体环境是安装有三个条码扫描器的笔记本电脑上的Ubuntu 11.04。 该应用程序是用C ++或python编写的(取决于这个问题的答案)。 预先感谢任何提示或答案

Python:当父母死亡时如何杀死subprocess?

subprocess开始于 subprocess.Popen(arg) 有没有办法确保父母exception终止时会死亡? 我需要这个在Windows和Linux上工作。 我知道这个Linux的解决scheme 。 编辑: 使用subprocess启动subprocess的需求。如果解决scheme使用不同的启动进程的方法存在,则可以放宽subprocess.Popen(arg) 。