注意:我正在使用virtualenvwrapper。 在激活虚拟环境之前: $ pip install lxml Requirement already satisfied (use –upgrade to upgrade): lxml in /usr/lib/python2.7/dist-packages Cleaning up… 激活虚拟环境后: (test-env)$ pip install lxml force/build/lxml/src/lxml/includes/etree_defs.h:9:31: fatal error: libxml/xmlversion.h: No such file or directory compilation terminated. error: command 'gcc' failed with exit status 1 —————————————- Command /home/chaz/dev/envs/test-with-system-python-force/bin/python2 .7 -c "import setuptools;__file__='/home/chaz/dev/envs/test-with- system-python-force/build/lxml/setup.py';exec(compile(open(__file__). read().replace('\r\n', '\n'), __file__, 'exec'))" install […]
我有一个数字,其中包含许多子图。 fig = plt.figure(num=None, figsize=(26, 12), dpi=80, facecolor='w', edgecolor='k') fig.canvas.set_window_title('Window Title') # Returns the Axes instance ax = fig.add_subplot(311) ax2 = fig.add_subplot(312) ax3 = fig.add_subplot(313) 我如何给子图添加标题? fig.suptitle为所有graphics添加标题,虽然ax.set_title()存在,但后者不会为我的子图添加任何标题。 感谢您的帮助。 编辑:纠正了关于set_title()错字。 感谢Rutger Kassies
我喜欢doxygen来创buildC或PHP代码的文档。 我有一个即将到来的Python项目,我想我记得Python没有/ * .. * /注释,也有自己的自我文档设施,这似乎是Python文档的方式。 我可以只使用doxygen吗? 有什么特别需要注意的? 我已经在Python中做了一些编码,但到目前为止,只在我懒得logging的小项目上(是的,我知道…但现在我们假装没问题)。
假设我有这样的pandasDataFrame: >>> df = pd.DataFrame({'id':[1,1,1,2,2,2,2,3,4],'value':[1,2,3,1,2,3,4,1,1]}) >>> df id value 0 1 1 1 1 2 2 1 3 3 2 1 4 2 2 5 2 3 6 2 4 7 3 1 8 4 1 我想获得每个id的前2个logging的新的DataFrame,像这样: id value 0 1 1 1 1 2 3 2 1 4 2 2 7 3 1 8 […]
给定一个3倍的numpy数组 a = numpy.arange(0,27,3).reshape(3,3) # array([[ 0, 3, 6], # [ 9, 12, 15], # [18, 21, 24]]) 规范我想到的二维数组的行 row_sums = a.sum(axis=1) # array([ 9, 36, 63]) new_matrix = numpy.zeros((3,3)) for i, (row, row_sum) in enumerate(zip(a, row_sums)): new_matrix[i,:] = row / row_sum 一定有更好的办法,不是吗? 也许要澄清:通过规范我的意思是,每行的总和必须是1。 但是我认为这对大多数人来说是清楚的。
我真的很喜欢Python的Emacs编辑器,因为如果我有这样的东西,它就是智能的Tab键 def foo(): if bar: blah [b]eep 我按下光标上的标签(这是在哔声b),它不会插入一个新的选项卡导致语法错误,但它会切换可能的级别,嘟嘟声可以。 有没有在Vim上得到这个效果?
所以我正在学习Python。 我正在通过课程,遇到了一个问题,我不得不将大量的target.write()压缩成一个write() ,而在每个用户inputvariables( write()的对象之间有一个"\n" )。 我想出了: nl = "\n" lines = line1, nl, line2, nl, line3, nl textdoc.writelines(lines) 如果我尝试做: textdoc.write(lines) 我得到一个错误。 但是如果我input: textdoc.write(line1 + "\n" + line2 + ….) 然后它工作正常。 为什么我不能在write()中使用换行符的string,但是我可以在writelines()使用它? Python 2.7当我search到谷歌search到的大部分资源时,我发现它们远远超过了我的头脑,我仍然是一个外行人。
我有一个模型,它有一个date时间字段: date = models.DateField(_(“Date”),default = datetime.now()) 当我检查内置的Djangopipe理中的应用程序,DateField也有时间追加到它,所以,如果你试图保存它会返回一个错误。 我如何使默认的date? (datetime.today()不工作)
我知道Python的循环导入问题已经出现了很多次,我已经阅读了这些讨论。 在这些讨论中反复提出的意见是,循环import是一个糟糕的devise的标志,应重新组织代码,以避免循环导入。 有人可以告诉我如何在这种情况下避免循环导入吗?我有两个类,我希望每个类都有一个构造函数(方法),它需要另一个类的实例并返回类的一个实例。 更具体地说,一个类是可变的,一个是不可变的。 哈希,比较等需要不可变类。 可变类也需要做的事情。 这与sets和frozensets或列表和元组类似。 我可以把两个类定义放在同一个模块中。 还有其他build议吗? 一个玩具的例子是A类,它有一个属性是一个列表,而B类有一个属性是一个元组。 然后,类A有一个方法,它接受一个类B的实例,并返回一个类A的实例(通过将元组转换为一个列表),同样,类B有一个方法,它接受一个类A的实例并返回一个类B的实例(通过将列表转换为元组)。
我发现我的Python代码中的瓶颈,与心理等玩过。然后决定编写ac / c + +扩展的性能。 在swig的帮助下,你几乎不需要关心参数等。一切正常。 现在我的问题:在调用实际的.pyd或.so代码之前,swig会创build一个相当大的py文件,它会执行大量的“检查”和“PySwigObject”。 如果你手写这个文件,或者让swig去做,你们中的任何人是否有任何经验是否有更多的性能获得?