Articles of python

我如何正确安装C编译器来安装Windows的Python包?

我相信我没有正确安装我的C编译器。 我试图在我的Windows 8机器上安装一些Python 2.7包。 我不断收到以下错误: “RuntimeError:损坏的工具链:无法链接一个简单的C程序”。 Python已经正确安装,并且一直运行良好。 我一直在使用“virutalenv”包,并在虚拟环境中工作。 然后,我尝试安装Cygwin,MinGW和MS Visual Studios 2012,其中没有一个似乎在virtualenv中工作。 我不知道我在做什么错,任何帮助将是伟大的。 谢谢,吉米

Windows上的multiprocessing.Pool.apply_async

我正在尝试使用一个池来并行处理一些subprocess调用。 一切工作正常,如果我构build池的整个迭代,并使用imap , map , imap_unordered等,但我不能得到apply_async工作。 例如,这可以正常工作: from subprocess import check_call from multiprocessing import Pool def dispatch_call(file_name): return check_call(…) if __name__ == '__main__': files = (constructed file list) pool = Pool() pool.imap(dispatch_call, files) pool.close() pool.join() 但是,这并不是: from subprocess import check_call from multiprocessing import Pool def dispatch_call(file_name): return check_call(…) if __name__ == '__main__': files = (constructed […]

在Gnome Shell中使用通知的Python程序不起作用

我正在写一个Python程序,它从网页获取信息,并在Gnome Shell的Notification中显示。 我正在使用Arch,所以我想在启动时启动这个程序,如果网页上有任何改变,它会通知我。 这是我的代码: import time import webbrowser import requests from bs4 import BeautifulSoup from gi.repository import Notify, GLib IPS = {'Mobifone': True, 'Viettel': False, 'Vinaphone': False} LINK = "https://id.vtc.vn/tin-tuc/chuyen-muc-49/tin-khuyen-mai.html" def set_ips_state(ips_name, state): global IPS for key in IPS.iterkeys(): if key == ips_name: IPS[key] = state def call_webbrowser(notification, action_name, link): webbrowser.get('firefox').open_new_tab(link) def create_notify(summary, body, link): […]

如何访问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作业是一种可能性。 任何人都有意见吗?