Tag: python

使用pandas的相关matrix

我有一个具有大量特征的数据集,因此分析相关matrix变得非常困难。 我想绘制一个相关matrix,我们使用pandas库中的dataframe.corr()函数。 有没有pandas库提供的内置函数来绘制matrix?

Python中的字符范围

有没有办法来区分字符? 像这样的东西。 for c in xrange( 'a', 'z' ): print c 我希望你们能帮忙

如何获得一个URL中的最后一个斜杠后的一切?

我怎样才能提取Python中的URL中的最后一个斜杠之后? 例如,这些url应该返回以下内容: URL: http://www.test.com/TEST1 returns: TEST1 URL: http://www.test.com/page/TEST2 returns: TEST2 URL: http://www.test.com/page/page/12345 returns: 12345 我试过urlparse,但是这给了我完整的path文件名,如page/page/12345 。

Python,为什么elif关键字?

我刚开始Python编程,我想知道关于elif关键字。 其他编程语言我用过之前使用else if 。 有没有人有一个想法,为什么Python开发人员添加额外的elif关键字? 为什么不: if a: print("a") else if b: print("b") else: print("c")

忽略git仓库中的.pyc文件

我怎么能忽略文件.pyc在混帐。 如果我把.gitignore不工作:我需要他们是不追踪,不检查它的提交。

在Python调用中禁止输出到可执行文件

我有一个名为A的二进制文件,在调用时会生成输出。 如果我从Bash shell调用它,大部分输出被A > /dev/null所抑制。 所有的输出都被A &> /dev/null所抑制 我有一个名为B ,需要调用A的Python脚本。 我希望能够从B生成输出,同时抑制A所有输出。 在B ,我尝试了os.system('A') , os.system('A > /dev/null')和os.system('A &> /dev/null') , os.execvp('…')等,但是没有一个压制A的所有输出。 我可以运行B &> /dev/null ,但是这也抑制了所有B的输出,我不想这样做。 任何人有build议?

numpy:如果numpy数组是view,那么可靠的(非保守)指标

寻找一种方法可靠地确定一个numpy对象是否是一个视图。 相关的问题已经出现了很多次( 这里 , 这里 , 这里 ),人们提供了一些解决scheme,但似乎都有问题: 现在在pandas使用的testing是在my_array.base is not None调用某个视图。 这似乎总是能够捕捉到意见,但也提供了大量的误报(即使报告不正确,报告的情况也是如此)。 numpy.may_share_memory()将检查两个特定的数组,但不会一般地回答 (@RobertKurn说,截至2012年是最好的工具 – 任何改变?) flags['OWNDATA'])被报告(第三条评论的第一个答案)在某些情况下失败。 (我感兴趣的原因是我正在为大pandas实施抄写,而一个保守的指标正在导致过度复制。)

为什么Python 3中的切片仍然是复制而不是视图?

正如我现在才注意到这个答案评论后,在Python 3中的切片返回他们切片,而不是视图的浅拷贝。 为什么还是这样? 即使不考虑numpy的视图使用情况而不是复制的切片, dict.keys , dict.items和dict.items都会在Python 3中返回视图,Python 3还有很多其他的方面,迭代器,似乎会有一个切片变得相似的运动。 itertools确实有一个islice函数,可以进行迭代切片,但是这比正常的切片更有限,并且不提供沿着dict.keys或dict.values行的视图function。 同样,事实上你可以使用赋值来修改原始列表,但切片本身是拷贝而不是视图,这是这个语言的一个矛盾的方面,似乎违反了Python中的几个原则。 那就是,你可以做的事实 >>> a = [1, 2, 3, 4, 5] >>> a[::2] = [0, 0, 0] >>> a [0, 2, 0, 4, 0] 但不是 >>> a = [1, 2, 3, 4, 5] >>> a[::2][0] = 0 >>> a [0, 2, 3, 4, 5] 或类似的东西 >>> […]

Python db-api:fetchone vs fetchmany与fetchall

我今天和一些同事讨论了python的db-api fetchone与fetchmany和fetchall的区别。 我敢肯定这些用例中的每一个都依赖于我使用的db-api的实现,但是一般来说,fetchone vs fetchmany和fetchall的用例是什么? 换句话说,是下面的等价物? 还是有其中一种比其他更受欢迎? 如果是的话,在哪种情况下? cursor.execute("SELECT id, name FROM `table`") for i in xrange(cursor.rowcount): id, name = cursor.fetchone() print id, name cursor.execute("SELECT id, name FROM `table`") result = cursor.fetchmany() while result: for id, name in result: print id, name result = cursor.fetchmany() cursor.execute("SELECT id, name FROM `table`") for id, name in cursor.fetchall(): […]

在函数内创build一个类并访问在包含函数的作用域中定义的函数

编辑 : 在这个问题的底部看到我的完整答案。 tl; dr答案 :Python有静态嵌套的作用域。 静态方面可以与隐式variables声明交互,产生不明显的结果。 (由于语言的dynamic性,这可能会特别令人惊讶)。 我认为我对Python的范围规则有一个很好的处理,但是这个问题让我彻底陷入困境,而且我的google-fu已经失败了(不是我很惊讶 – 看问题的标题;) 我将从几个按预期工作的例子开始,但可以跳到例4的多汁部分。 例1 >>> x = 3 >>> class MyClass(object): … x = x … >>> MyClass.x 3 直截了当地说:在类定义期间,我们可以访问在外层(在这种情况下为全局)范围内定义的variables。 例2。 >>> def mymethod(self): … return self.x … >>> x = 3 >>> class MyClass(object): … x = x … mymethod = mymethod … >>> MyClass().mymethod() […]