Tag: python

使用SQLAlchemy ORM批量插入

有没有办法让SQLAlchemy做一个批量插入,而不是插入每个单独的对象。 即 这样做的: INSERT INTO `foo` (`bar`) VALUES (1), (2), (3) 而不是: INSERT INTO `foo` (`bar`) VALUES (1) INSERT INTO `foo` (`bar`) VALUES (2) INSERT INTO `foo` (`bar`) VALUES (3) 我刚刚转换了一些代码来使用sqlalchemy,而不是原始的sql,虽然现在好多了,但现在看起来比较慢(高达10倍),我想知道这是否是原因。 也许我可以更有效地改善使用会话的情况。 目前我有autoCommit=False ,并添加了一些东西后,做一个session.commit() 。 虽然这似乎导致数据如果数据库在其他地方更改,如果即使我做了一个新的查询,我仍旧得到旧的结果? 谢谢你的帮助!

链式方法在Python中调用缩进样式

从阅读PEP-8,我知道你应该把右括号放在函数调用的最后一个参数的同一行: ShortName.objects.distinct().filter( product__photo__stockitem__isnull=False) 或许,长时间的表情最好是完全避免。 但是,如果这是不可取的, 你将如何去多个链式方法调用? 是否应该closures一个新的线? ShortName.objects.distinct().filter( product__photo__stockitem__isnull=False ).values_list('value', flat=True) 那么没有参数的方法呢? 如何在不用引用中间返回值的情况下将它们写入多行? ShortName.objects.distinct( ).filter().values() # looks ugly 更新 :有一个重复的问题, 如何打破Python中的链式方法的一行? 。 接受的答案表明从jQuery风格开始,每个新行都带有一个点。 作者没有提供任何理由或权威的参考,所以我想获得这种风格或其他select的确认。

Pythonconfiguration文件:任何文件格式build议? INI格式还合适吗? 看起来很老派

我需要为Python应用程序存储configuration(键/值),我正在寻找将这些configuration存储在文件中的最佳方法。 我遇到了Python的ConfigParser ,我想知道现在INI文件格式是否真的还适合? 是否存在更新的格式或INI仍然是推荐的方式? (XML,JSON,…) 请分享您的意见/build议…

Matplotlib子图的通用xlabel / ylabel

我有以下情节: fig,ax = plt.subplots(5,2,sharex=True,sharey=True,figsize=fig_size) 现在我想给这个图表常用的x轴标签和y轴标签。 “共同”是指在整个子图的网格下方应该有一个大的x轴标签,而在右边的是一个大的y轴标签。 在plt.subplots的文档中我找不到任何关于这个的东西,而且我的googlings提示我需要创build一个大的plt.subplot(111)来开始 – 但是我怎样才能把我的5 * 2个子图放入使用plt.subplots ?

在Django中 – 模型inheritance – 它允许你重写父模型的属性吗?

我正在寻找这样做: class Place(models.Model): name = models.CharField(max_length=20) rating = models.DecimalField() class LongNamedRestaurant(Place): # Subclassing `Place`. name = models.CharField(max_length=255) # Notice, I'm overriding `Place.name` to give it a longer length. food_type = models.CharField(max_length=25) 这是我想要使用的版本(虽然我打开任何build议): http : //docs.djangoproject.com/en/dev/topics/db/models/#id7 Django支持这个吗? 如果没有,是否有办法达到类似的结果?

什么是检查一个类是否定义了函数的最快方法?

我正在写一个AI状态空间searchalgorithm,我有一个通用的类,可以用来快速实现一个searchalgorithm。 一个子类将定义必要的操作,而algorithm则完成剩下的操作。 这里是我卡住的地方:我想要避免一次又一次地重新生成父状态,所以我有以下函数,它返回可以合法应用于任何状态的操作: def get_operations(self, include_parent=True): ops = self._get_operations() if not include_parent and self.path.parent_op: try: parent_inverse = self.invert_op(self.path.parent_op) ops.remove(parent_inverse) except NotImplementedError: pass return ops 而invert_op函数默认会抛出。 有没有更快的方法来检查是否没有定义函数捕获exception? 我正在想办法检查目前的目录,但这似乎并不正确。 hasattr通过调用getattr并检查是否引发来实现,这不是我想要的。

确定目录是否在git控制之下

我怎么知道给定的目录是否是git respository的一部分? (以下是python,但是bash或者其他的东西都可以。) os.path.isdir('.svn') 会告诉你当前目录是否受Subversion控制。 Mercurial和Git的仓库顶部只有一个.hg / .git,所以对于hg我可以使用 os.system('hg -q stat 2> /dev/null > /dev/null') == 0) 但如果没有更改, git status将返回一个非零(错误)退出状态。 正在迭代寻找.git自己最好的我可以做的?

用matplotlib / numpy进行线性回归

我试图在已经生成的散点图上生成一个线性回归,但是我的数据是列表格式的,所有使用polyfit的例子都需要使用arange 。 arange不接受名单。 我已经search高低如何将列表转换为数组,并没有看起来清晰。 我错过了什么吗? 接下来,如何最好地使用我的整数列表作为polyfitinput? 这里是我所遵循的polyfit例子: from pylab import * x = arange(data) y = arange(data) m,b = polyfit(x, y, 1) plot(x, y, 'yo', x, m*x+b, '–k') show()

如何在Python中打印字典的键值对

我想从python字典输出我的键值对,如下所示: key1 \t value1 key2 \t value2 我以为我可以这样做: for i in d: print d.keys(i), d.values(i) 但显然不是这样的,因为keys()和values()不带参数。 谢谢。

Python:如何sorting几个值的字典列表?

我想首先按值sorting,然后按第二个值sorting。 是否有捷径可寻? 这是一个小例子: A = [{'name':'john','age':45}, {'name':'andi','age':23}, {'name':'john','age':22}, {'name':'paul','age':35}, {'name':'john','age':21}] 这个命令是用'name'对这个列表进行sorting'name' : sorted(A, key = lambda user: user['name']) 但是我怎么能通过第二个值来sorting这个列表呢? 像这个例子中的'age'一样。 我想要这样的sorting(首先按'name'sorting,然后按'age'sorting): andi – 23 john – 21 john – 22 john – 45 paul – 35 谢谢!