Tag: python

Django:从图像url中的ImageField添加图像

请原谅我难看的英语;-) 想象一下这个非常简单的模型: class Photo(models.Model): image = models.ImageField('Label', upload_to='path/') 我想从图片url创build一个照片(即,不要在djangopipe理站点手动)。 我认为我需要做这样的事情: from myapp.models import Photo import urllib img_url = 'http://www.site.com/image.jpg' img = urllib.urlopen(img_url) # Here I need to retrieve the image (as the same way that if I put it in an input from admin site) photo = Photo.objects.create(image=image) 我希望我能很好的解释这个问题,如果不告诉我的话。 谢谢 :) 编辑: 这可能工作,但我不知道如何将content转换为django文件: from urlparse […]

我怎样才能让setuptools安装不在PyPI上的软件包呢?

我刚开始使用setuptools和virtualenv。 我的软件包需要GitHub提供的最新的python-gearman。 PyPI上的python-gearman版本是旧的版本。 Github的源码是setuptools兼容的,即setup.py等。有没有办法让setuptools下载并安装新版本,而不是在PyPI上查找并安装旧版本? 仅供参考,新的python-gearman是http://github.com/mtai/python-gearman

“foo是None”还是“foo == None”有什么区别?

有什么区别: if foo is None: pass 和 if foo == None: pass 我在大多数Python代码(以及我自己编写的代码)中看到的惯例是前者,但是最近我遇到了使用后者的代码。 没有一个是NoneType的一个实例(也是唯一的实例IIRC),所以没关系,对吗? 有没有可能的情况?

Python memoising /延迟查找属性修饰器

最近我经历了一个包含许多类的现有代码库,其中实例属性反映了存储在数据库中的值。 我已经重构了很多这些属性,让他们的数据库查询被延期,即。 不能在构造函数中初始化,而只能在第一次读取时初始化。 这些属性在实例的生命周期中不会改变,但是它们是第一次计算的真正的瓶颈,只有在特殊情况下才真正被访问。 因此,它们也可以在从数据库中检索后进行caching(因此,这符合memoisation的定义,input只是“没有input”)。 我发现自己一遍又一遍地input下面的代码片段来获取各种类的各种属性: class testA(object): def __init__(self): self._a = None self._b = None @property def a(self): if self._a is None: # Calculate the attribute now self._a = 7 return self._a @property def b(self): #etc 有没有一个现有的装饰器已经在Python中做到这一点,我根本不知道? 或者,是否有一个相当简单的方法来定义一个装饰器来做到这一点? 我正在Python 2.5下工作,但2.6的答案可能仍然是有趣的,如果他们有很大的不同。 注意 这个问题之前,Python包括了很多现成的装饰器。 我已更新它只是为了更正术语。

用PythonvalidationSSL证书

我需要编写一个脚本,通过HTTPS连接到企业内部网上的一堆网站,并validation其SSL证书是否有效; 没有过期,签发的地址是否正确等等。我们使用我们自己的内部公司authentication中心,因此我们有CA的公钥来validation证书。 默认情况下,Python在使用HTTPS时接受和使用SSL证书,所以即使证书无效,Python库(如urllib2和Twisted)也会很高兴地使用证书。 是否有一个好的图书馆让我通过HTTPS连接到一个网站,并以这种方式validation其证书? 如何在Python中validation证书?

什么是在Mac上安装python模块最兼容的方式?

我开始学习Python并且喜欢它。 我主要和Linux一样在Mac上工作。 我发现在Linux(大多是Ubuntu 9.04),当我安装一个使用apt-get的python模块,它工作正常。 我可以毫不费力地导入它。 在Mac上,我习惯于使用Macports来安装所有Unixy的东西。 但是,我发现我安装的大部分python模块都没有被python看到。 我花了一些时间玩PATH设置和使用python_select。 没有什么真正的工作,在这一点上,我不是很了解,而是我只是在旁边。 我觉得Macports并不是普遍喜欢pipe理Python模块。 我想开始使用更“接受”(如果这是正确的话)方法新鲜。 所以,我想知道,Mac python开发人员用什么方法来pipe理他们的模块? 奖金问题: 你使用苹果的Python或其他版本? 你从源代码编译所有的东西还是有一个包装经理,运作良好(芬克?)。

pip安装lxml错误

这是我的错误: (mysite)zjm1126@zjm1126-G41MT-S2:~/zjm_test/mysite$ pip install lxml Downloading/unpacking lxml Running setup.py egg_info for package lxml Building lxml version 2.3. Building without Cython. ERROR: /bin/sh: xslt-config: not found ** make sure the development packages of libxml2 and libxslt are installed ** Using build configuration of libxslt Installing collected packages: lxml Running setup.py install for lxml Building lxml version […]

Django的auto_now和auto_now_add

对于Django 1.1。 我在我的models.py中有这个: class User(models.Model): created = models.DateTimeField(auto_now_add=True) modified = models.DateTimeField(auto_now=True) 更新一行时,我得到: [Sun Nov 15 02:18:12 2009] [error] /home/ptarjan/projects/twitter-meme/django/db/backends/mysql/base.py:84: Warning: Column 'created' cannot be null [Sun Nov 15 02:18:12 2009] [error] return self.cursor.execute(query, args) 我的数据库的相关部分是: `created` datetime NOT NULL, `modified` datetime NOT NULL, 这是值得担忧的吗? 侧面的问题:在我的pipe理工具中,这两个字段没有显示出来。 这是预期的吗?

python文件扩展名是什么?.pyc .pyd .pyo代表什么?

这些python文件扩展名是什么意思? .pyc文件 .pyd .pyo 它们之间有什么区别,它们是如何从* .py文件生成的?

编码/解码有什么区别?

我从来没有确定,我明白str / unicode解码和编码之间的区别。 我知道str().decode()是用于当你有一个字节的string,你知道有一个特定的字符编码,给定的编码名称,它将返回一个Unicodestring。 我知道unicode().encode()根据给定的编码名称将unicode字符转换为一个字节的string。 但是我不明白str().encode()和unicode().decode()是什么。 任何人都可以解释,也可能还纠正我上面错了什么? 编辑: 几个答案给出了.encode在string上做了什么的信息,但是似乎没有人知道.decode对于unicode所做的。