小编Rei*_*ica的帖子

列出给定类层次结构中的所有基类?

给定一个类Foo(无论它是否是一个类),如何生成所有基类 - 在继承层次结构中的任何位置 - 它issubclass

python oop inheritance class introspection

123
推荐指数
6
解决办法
6万
查看次数

Shell脚本中的关联数组

我们需要一个模拟关联数组的脚本或类似于Shell Scripting的数据结构的Map,任何主体?

bash shell associative-array hashtable

112
推荐指数
9
解决办法
17万
查看次数

在Python中调用基类的类方法

请考虑以下代码:

class Base(object):

    @classmethod
    def do(cls, a):
        print cls, a

class Derived(Base):

    @classmethod
    def do(cls, a):
        print 'In derived!'
        # Base.do(cls, a) -- can't pass `cls`
        Base.do(a)

if __name__ == '__main__':
    d = Derived()
    d.do('hello')

> $ python play.py  
> In derived! 
> <class '__main__.Base'> msg
Run Code Online (Sandbox Code Playgroud)

Derived.do,我该如何打电话Base.do

super如果这是一个普通的对象方法,我通常会直接使用甚至是基类名,但显然我找不到在基类中调用classmethod的方法.

在上面的例子中,Base.do(a)print Base类而不是Derived类.

python overriding class class-method

93
推荐指数
2
解决办法
4万
查看次数

关闭除Emacs中当前缓冲区之外的所有缓冲区

如何在Emacs中关闭除当前缓冲区之外的所有缓冲区?与现代Web浏览器中的"关闭其他标签"功能类似?

emacs elisp

88
推荐指数
6
解决办法
3万
查看次数

在Python中获取调用函数模块的__name__

假设myapp/foo.py包含:

def info(msg):
    caller_name = ????
    print '[%s] %s' % (caller_name, msg)
Run Code Online (Sandbox Code Playgroud)

myapp/bar.py包含:

import foo
foo.info('Hello') # => [myapp.bar] Hello
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我希望caller_name将其设置为__name__调用函数模块的属性(即'myapp.foo').如何才能做到这一点?

python introspection stack-trace

87
推荐指数
3
解决办法
5万
查看次数

Django的受欢迎程度的历史

什么序列的事件使Django成为最受欢迎的Python Web框架..仍然如此?尽管存在其他几个框架.

注意:这个问题既不是议论性的,也不是对抗性的.我只是要求(目标)导致其实际受欢迎的"事件序列".意识到软件接受的动态,我并不打算让任何人参与技术优势的争论.

django history

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

你如何在Jinja2中对列表进行排序?

我想这样做:

 {% for movie in movie_list | sort(movie.rating) %}
Run Code Online (Sandbox Code Playgroud)

但那不对......文档含糊不清......你怎么在Jinja2做到这一点?

python sorting jinja2

78
推荐指数
3
解决办法
6万
查看次数

Python - 使用virtualenv手动安装包

我有一个python程序,我想安装到我的virtualenv - 它是一个zip包,我需要解压缩,然后运行一个setup.py程序 - 但我的问题是更多的关于如何将这些解压缩的文件放入我的virtualenv所以包安装到virtualenv的site-packages文件夹中?

我也可以从我的virtualenv内部安装使用pip install <package name>,但由于某种原因,PIP下载的包已过期.

那么 - 有人能告诉我手动安装软件包的几个简单步骤吗?

到目前为止,我已经有了加载Virtualenv的基本命令:

-bash-3.2$ source ~/.bashrc
-bash-3.2$ workon test
(test)-bash-3.2$ //Now I'm working on my virtualenv, but where do I go after this??
Run Code Online (Sandbox Code Playgroud)

那么 - 解压缩python包/程序的位置是否重要 - 或者我应该在解压缩之前首先登录virtualenv?在我加载了virtualenv并且我在内部使用'workon test'命令之后,我安装的任何python包,无论我找到它的目录,都将自己安装到正确的virtualenv的site-packages文件夹中?

选项1是将python程序解压缩到/ home/username/tmp - 然后登录到我的virtualenv,导航到该文件夹​​并运行setup.py程序 - 假设virtualenv将所有相关文件传输到它自己的site-packages文件夹.

或者方案2是将文件直接解压缩到站点包中,然后从那里运行(登录到virtualenv后)等等

感谢您帮助Python clutz!

python installation pip virtualenv virtualenvwrapper

78
推荐指数
2
解决办法
4万
查看次数

node.js和Tornado之间的差异

除了node.js是用JS和Tornado用Python编写的,这两者之间有什么区别?它们都是非阻塞的异步Web服务器,对吧?除了语言之外,为什么选择其中一个?

javascript python comparison tornado node.js

77
推荐指数
3
解决办法
3万
查看次数

附加到Go中的文件

所以我可以从这样的本地文件中读取:

data, error := ioutil.ReadFile(name)
Run Code Online (Sandbox Code Playgroud)

我可以写一个本地文件

ioutil.WriteFile(filename, content, permission)
Run Code Online (Sandbox Code Playgroud)

但是我如何附加到文件?有内置方法吗?

file-io go

74
推荐指数
6
解决办法
8万
查看次数