小编ale*_*lex的帖子

如何返回排序列表的索引?

我需要对列表进行排序,然后返回一个列表,其中包含列表中已排序项的索引.例如,如果我要排序的列表是[2,3,1,4,5],我需要[2,0,1,3,4]返回.

这个问题是在字节上发布的,但我想我会在这里重新发布. http://bytes.com/topic/python/answers/44513-sorting-list-then-return-index-sorted-item

我特别需要根据对象的属性对对象列表进行排序.然后,我需要重新排序相应的列表以匹配新排序列表的顺序.

有没有办法做到这一点?

python

113
推荐指数
4
解决办法
16万
查看次数

可视化Python模块的结构

是否有工具可用于以图形方式表示python模块的结构?

我在想通过代表导入的箭头连接的子模块和类的图形.

python

16
推荐指数
1
解决办法
4038
查看次数

在sqlalchemy中强制对象为"脏"

有没有办法强制sqlalchemy映射的对象被考虑dirty?例如,给出sqlalchemy的对象关系教程 的上下文,证明了问题,

a=session.query(User).first()
a.__dict__['name']='eh'
session.dirty
Run Code Online (Sandbox Code Playgroud)

高产,

IdentitySet([])
Run Code Online (Sandbox Code Playgroud)

我正在寻找一种方法来强迫用户a进入脏状态.

出现此问题是因为使用sqlalchemy映射的类控制了属性getter/setter方法,这会阻止sqlalchemy注册更改.

python sqlalchemy

14
推荐指数
2
解决办法
4590
查看次数

生成图像 - >使用数据uri嵌入烧瓶中

我正在开发一个Flask应用程序,它可以生成动态图并通过jinja模板显示它.我想使用模板在Flask应用程序中调用一个返回png数据的函数,然后将响应嵌入到数据uri中.

这个要点非常接近我的目标,除了我想避免使用 url_for(以及路由).相反,我想使用数据uri(img src="data:image/png;base64,...)内联显示图像数据

python matplotlib flask

9
推荐指数
2
解决办法
6762
查看次数

快速反转或点kxnxn矩阵的方法

有没有一种使用numpy计算kxnxn矩阵的逆的快速方法(在每个k切片计算的倒数)?换句话说,有没有办法矢量化以下代码:

>>>from numpy.linalg import inv
>>>a-random(4*2*2).reshape(4,2,2)
>>>b=a.copy()
>>>for k in range(len(a)):
>>>    b[k,:,:] = inv(a[k,:,:])
Run Code Online (Sandbox Code Playgroud)

numpy matrix scipy

5
推荐指数
1
解决办法
1184
查看次数

是否有IPython笔记本API?

我想从python脚本生成几个笔记本.是否有编写IPython笔记本的API?

python ipython

5
推荐指数
1
解决办法
1478
查看次数

将迭代列表传递给 itertools 函数

我正在使用 itertools.product 功能。我有一个 2-deep 嵌套列表,它是一个可迭代列表。我想将此传递给产品功能不知道如何正确格式化它。

说清楚,我想要

In [37]: [k for k in product([1,2],['a','b'])]
Out[37]: [(1, 'a'), (1, 'b'), (2, 'a'), (2, 'b')]
Run Code Online (Sandbox Code Playgroud)

但从这样的嵌套列表输入生成

nested_list = [[1,2],['a','b']]
Run Code Online (Sandbox Code Playgroud)

但我得到了

In [36]: [k for k in product(nested_list)]
Out[36]: [([1, 2],), (['a', 'b'],)]
Run Code Online (Sandbox Code Playgroud)

python python-itertools

4
推荐指数
1
解决办法
758
查看次数

重命名字典中的键

我想重命名字典的键是int,我需要它们与前导零的整数,以便它们正确排序.

例如我的键是这样的:

'1','101','11'
Run Code Online (Sandbox Code Playgroud)

我需要他们:

'001','101','011'
Run Code Online (Sandbox Code Playgroud)

这就是我现在正在做的事情,但我知道有更好的方法

tmpDict = {}
  for oldKey in aDict:
 tmpDict['%04d'%int(oldKey)] = aDict[oldKey]
newDict = tmpDict
Run Code Online (Sandbox Code Playgroud)

python dictionary

3
推荐指数
1
解决办法
2593
查看次数