Tag: python

Python列表的底层数据结构是什么?

什么是用于实现Python的内置列表数据types的典型底层数据结构?

Python Virtualenv – 没有名为virtualenvwrapper.hook_loader的模块

我正在运行Mac OS 10.6.8。 并想除了python 2.6以外还安装python 2.7,并在新的virtualenv中使用python 2.7。 我执行了以下步骤: 我下载了python 2.7并安装了它: http://www.python.org/ftp/python/2.7.3/python-2.7.3-macosx10.6.dmg 然后我运行这个命令来使用python2.7build立一个新的virtualenv: mkvirtualenv –python=python2.7 mynewenv 我的.bash_profile如下所示: # needed for virtualenvwrapper export WORKON_HOME=$HOME/.virtualenvs export VIRTUALENVWRAPPER_PYTHON=/usr/local/bin/python export VIRTUALENVWRAPPER_VIRTUALENV=/usr/local/bin/virtualenv source /usr/local/bin/virtualenvwrapper.sh # Setting PATH for Python 2.7 # The orginal version is saved in .bash_profile.pysave PATH="/Library/Frameworks/Python.framework/Versions/2.7/bin:${PATH}" export PATH 现在当我打开控制台,我得到以下错误信息。 ImportError: No module named virtualenvwrapper.hook_loader virtualenvwrapper.sh: There was a […]

为什么点击冻结报告一些新的virtualenv使用–no-site-packages创build的包?

当我创build一个新的virtualenv时, pip freeze显示我已经安装了一些软件包,即使我没有在环境中安装任何东西。 我期待的pip freeze返回空输出,直到我的第一个pip install到环境中。 wsgiref是标准库的一部分,是不是它为什么显示出来呢? 一天@车库:〜$ mkdirtesting 一天@车库:〜$ cdtesting day @ garage:〜/ testing $ virtualenv –no-site-packages。 ./bin/python中的新的python可执行文件 安装分发………………………………………… ………. ………………………………………….. ……………………….. …………………………………..完成。 day @ garage:〜/ testing $。 斌/启动 (testing)day @ garage:〜/ testing $ pip freeze 分发== 0.6.10 ==的wsgiref 0.1.2 一些额外的信息: (testing)day @ garage:〜/ testing $ pip –version pip 0.7.2 from /home/day/testing/lib/python2.7/site-packages/pip-0.7.2-py2.7.eg g(python 2.7) […]

有没有一种简单的方法可以使会话在烧瓶中超时?

我正在build立一个网站,用户有帐户,并能够login瓶。 我正在使用flask-principal进行部分日志logging和angular色pipe理。 说5分钟或10分钟后,用户的会话是否有效? 我无法在烧瓶文档或flask-principal的文档中find它。 我想到了一个手动的方法,在login的时候用一个时间标记设置一个可变的服务器端,并在用户下一个操作时,服务器validation该时间戳上的时间差,并删除会话。

ImportError:没有名为 – Python的模块

我有一个python应用程序,具有以下目录结构: src | +—- main | +—- util | +—- gen_py | +—- lib 在包主 ,我有一个名为MyServer.py的python模块,它有一个导入语句,如: from gen_py.lib import MyService 为了使这个声明起作用,我在MyServer.py的开始处放置了以下行: import sys sys.path.append('../gen_py/lib') 当我在terminal中运行MyServer.py时,出现以下错误: ImportError:没有名为gen_py.lib的模块 我在这里错过了什么?

检查包含列表中的string的string最简单的方法?

我发现自己反复编写相同的代码块: def stringInList(str, list): retVal = False for item in list: if str in item: retVal = True return retVal 有什么办法可以更快/更less的代码写这个函数? 我通常在if语句中使用它,如下所示: if stringInList(str, list): print 'string was found!'

Python如何sorting元组列表?

在经验上,似乎Python的默认列表sorting器,当传递一个元组列表时,将按每个元组中的第一个元素进行sorting。 那是对的吗? 如果不是,按照元素的第一个元素对元组列表进行sorting的正确方法是什么?

Python for循环更好的方法

我们都知道在Python中执行语句的常用方法是使用for循环。 这样做的一般方法是, # I am assuming iterated list is redundant. # Just the number of execution matters. for _ in range(count): pass 我相信没有人会争辩说上面的代码是常见的实现,但是还有另一种select。 通过乘以引用来创buildPython列表创build的速度。 # Uncommon way. for _ in [0] * count: pass 也有旧的方式。 i = 0 while i < count: i += 1 我testing了这些方法的执行时间。 这是代码。 import timeit repeat = 10 total = 10 […]

当我签出一个新的分支时,自动删除* .pyc文件和其他空的目录

所以在使用git和python的时候,这里有一个有趣的情况,而且我确定它也发生在其他情况下。 比方说,我做了一个文件夹/ foo /的git回购。 在那个文件夹里我放了/foo/program.py。 我运行program.py并创build了program.pyc。 在.gitignore文件中有* .pyc,所以git不会跟踪它。 现在让我们说我做另一个分支,开发。 在这个开发分支中,我完全删除了/ foo /文件夹。 现在我切换回主分支,/ foo /重新出现。 我运行了program.py并重新显示了program.pyc文件。 一切都很好。 我切换回我的开发分支。 / foo /目录应该消失。 它只存在于主分支,而不是开发分支。 但是,它仍然存在。 为什么? 因为忽略的program.pyc文件会阻止在切换分支时删除该文件夹。 解决这个问题的方法是在切换分支之前recursion地删除所有* .pyc文件。 我可以用这个命令轻松做到这一点。 find . -name "*.pyc" -exec rm '{}' ';' 问题是,几乎每次我改变分支时,都要记住这么做是令人讨厌的。 我可以为这个命令做一个别名,但是我每次改变分支时都必须记得input它。 我也可以为git分支做一个别名,但这也不好。 除了改变分支之外,git分支命令还有其他的一些function,我不想每次使用它时都删除所有的pyc文件。 哎呀,我甚至可能用它在一个非python回购,那么是什么? 有没有办法设置一个只有当我更改分支时执行的git钩子? 或者有什么其他的方式来设置所有* .pyc文件擦除每当我切换分支机构?

我如何在Django / Python中自动填充PDF表单?

我有我想用我的Django Web应用程序的数据自动填充的PDF表单,然后提供给用户下载。 什么python库会让我轻松预先填充PDF表单? 这些表格打算打印出来。