在Python中,我可以列出my_list并旋转内容: >>> my_list = list(range(10)) >>> my_list [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> new_list = my_list[1:] + my_list[:1] >>> new_list [1, 2, 3, 4, 5, 6, 7, 8, 9, 0] C#中的等价方法是创build一个由两个现有C#列表组成的新列表? 我知道如果有必要,我可以通过蛮力产生。
我有一个相当简单的应用程序与pyqt4构build。 我想debugging连接到我的应用程序中的button之一的function之一。 但是,当我做到以下几点 python -m pdb app.pyw > break app.pyw:55 # This is where the signal handling function starts. 事情并不像我希望的那样工作。 debugging器进入一个打印出QCoreApplication::exec: The event loop is already running的无限循环,而不是打破了我设置断点的function, QCoreApplication::exec: The event loop is already running ,我无法input任何东西。 有一个更好的方法吗?
我传递给Django的模板一个函数,它返回一些logging。 我想调用这个函数并迭代它的结果。 {% for item in my_func(10) %} 这是行不通的。 我试图将函数的返回值设置为一个variables,并迭代variables,但似乎没有办法在Django模板中设置variables。 有没有正常的方法来做到这一点?
我有一个统一的Python对象列表: class myClass(object): def __init__(self, attr): self.attr = attr self.other = None objs = [myClass (i) for i in range(10)] 现在我想提取一个带有该类的某个属性的列表(比如说attr),为了传递它,有一些函数(例如绘制数据) 什么是pythonic的做法, attr=[o.attr for o in objsm] ? 也许派生列表并添加一个方法,所以我可以使用一些成语 objs.getattribute("attr") ?
我在Windows XP上使用VirtualEnv。 我想知道我的大脑是否正确缠绕它。 我运行了virtualenv ENV并创build了C:\WINDOWS\system32\ENV 。 然后,我改变了我的PATHvariables,以包含C:\WINDOWS\system32\ENV\Scripts而不是C:\Python27\Scripts 。 然后,我检出了Django到C:\WINDOWS\system32\ENV\Lib\site-packages\django-trunk ,更新了我的PYTHON_PATHvariables以指向新的Django目录,并继续easy_install其他东西(这当然进入我的新的C:\WINDOWS\system32\ENV\Lib\site-packages目录)。 我明白为什么我应该使用VirtualEnv,所以我可以在同一台机器上运行多个版本的Django和其他库,但这是否意味着要切换环境之间,我必须基本上改变我的PATH和PYTHON_PATHvariables? 所以,我开发一个Django项目,在一个名为ENV的环境中使用Django 1.2,然后改变我的PATH ,这样我就可以使用一个叫做ENV2的环境,它具有Django的开发版本。 是基本上,还是有更好的方法来自动做这一切(我可以更新我的Python代码的path,但是这将需要我在我的应用程序中编写机器特定的代码)? 另外,这个过程与在Linux上使用VirtualEnv相比如何(我是Linux的初学者)。
我的问题:我发现使用STL映射和向量处理大型数据集与原始C ++通常可以比使用Cython快得多(并且内存占用更less)。 我认为这部分的速度损失是由于使用了Python列表和字典,并且在Cython中可能会有一些技巧使用较less的devise数据结构。 例如,这个页面( http://wiki.cython.org/tutorials/numpy )展示了如何通过预定义ND数组的大小和types来在Cython中快速生成numpy数组。 问题:有没有办法像列表/字典那样做类似的事情,例如大致说明你期望在其中有多less个元素或(键,值)对? 也就是说,有没有一种习惯的方法来将列表/字典转换为Cython中的(快速)数据结构? 如果没有,我想我只需要用C ++编写它,并包装在一个Cython导入。
我们的python项目有一个requirements.txt文件,里面列出了一些相关的模块。 我们曾经使用过 pip install -r requirements.txt 安装这些依赖关系。 我们现在使用tox来构buildtesting环境。 我的问题是,我们如何直接通过requirements.txt安装模块。 以下是我们的tox.ini和requirements.txt文件: tox.ini: [tox] envlist=py27 [testenv] deps=pytest boto commands=py.test rquirements.txt: boto 有什么办法从tox.ini中删除“boto”并添加类似的东西 deps_files=requirements.txt
我试图用二维数组中的每个项乘以一维数组中的相应项。 如果我想用1D数组乘以每一列,这很容易,如numpy.multiply函数所示。 但是我想做相反的事情,把每一个词汇都放在一行中。 换句话说,我想要繁殖: [1,2,3] [0] [4,5,6] * [1] [7,8,9] [2] 并得到 [0,0,0] [4,5,6] [14,16,18] 但是我得到了 [0,2,6] [0,5,12] [0,8,18] 有谁知道是否有一个优雅的方式来做到这一点与numpy? 亚历克斯,谢谢
我现在正在为一个类学习Python,而且我们刚刚将元组作为数据types之一。 我读了维基百科页面,但是,我无法弄清楚这种数据types在实践中会有用。 我能举一些例子,也许在Python中,需要一组不变的数字吗? 这与列表有何不同?
试图解决防止重复图像上传的问题。 我有两个JPG。 看着他们,我可以看到他们实际上是相同的。 但由于某种原因,他们有不同的文件大小(一个从备份中拉出来,另一个是另一个上传),所以他们有不同的md5校验和。 我怎样才能有效和自信地比较两幅图像,就像人类能够看到它们是完全一样的? 例如: http : //static.peterbe.com/a.jpg和http://static.peterbe.com/b.jpg 更新 我写了这个脚本: import math, operator from PIL import Image def compare(file1, file2): image1 = Image.open(file1) image2 = Image.open(file2) h1 = image1.histogram() h2 = image2.histogram() rms = math.sqrt(reduce(operator.add, map(lambda a,b: (ab)**2, h1, h2))/len(h1)) return rms if __name__=='__main__': import sys file1, file2 = sys.argv[1:] print compare(file1, file2) 然后,我下载了两个视觉相同的图像,并运行脚本。 […]