小编Pau*_*ulo的帖子

在Python中,元组比较是如何工作的?

我一直在阅读Core Python编程书,作者展示了一个例子:

(4, 5) < (3, 5) # Equals false
Run Code Online (Sandbox Code Playgroud)

所以,我想知道,它是如何/为什么它等于假?python如何比较这两个元组?

顺便说一下,书中没有解释.

python comparison tuples

147
推荐指数
2
解决办法
13万
查看次数

Python正则表达式:匹配括号内的括号

我一直在尝试匹配以下字符串:

string = "TEMPLATES = ( ('index.html', 'home'), ('base.html', 'base'))"
Run Code Online (Sandbox Code Playgroud)

但不幸的是,我对正则表达式的了解非常有限,因为你可以看到有两个括号需要匹配,以及我尝试使用的第二个内容,re.match("\(w*\)", string)但它没有用,任何帮助都将非常感激.

python regex

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

如何匹配python中的空格和字母数字字符

我正在尝试匹配中间有空格的字符串和字母数字字符,如下所示:

test = django cms
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下模式进行匹配:

patter = '\s'
Run Code Online (Sandbox Code Playgroud)

遗憾的是,它只匹配空格,所以当在re对象中使用搜索方法找到匹配时,它只返回空格,而不是整个字符串,如何更改模式以便在找到匹配时返回整个字符串?

python regex pattern-matching

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

Django Admin内联递归ManyToMany

我有以下模型与自身的多对多关系

class Ticket(models.Model):

    STATUS = (
        (0, "Open"),
        (1, "Closed"),
    )
    status = models.SmallIntegerField(default=0,choices=STATUS)
    title = models.CharField(max_length=100)
    replies = models.ManyToManyField('self')
    description = models.TextField()
Run Code Online (Sandbox Code Playgroud)

我试图使用以下代码将此模型显示为管理员中的内联

class TicketReply(admin.TabularInline):
    model = Ticket.replies.through
Run Code Online (Sandbox Code Playgroud)

但是我一直收到这个错误

<class 'tsn.ticket.models.Ticket_replies'> has more than 1 ForeignKey to <class 'tsn.ticket.models.Ticket'>
Run Code Online (Sandbox Code Playgroud)

所以我这样做错了,还是不支持?

python django django-orm django-admin

12
推荐指数
1
解决办法
2163
查看次数

从另一台机器同一网络访问Django devserver

我正在使用django的内置服务器开发一个站点,我希望我所在的同一网络中的其他计算机能够使用本地IP地址访问服务器.我已经看过很多关于此的帖子,在尝试了所有建议后,它仍然不允许我网络中的其他计算机访问该网站.

我使用运行服务器

python manage.py runserver 0.0.0.0:8000
Run Code Online (Sandbox Code Playgroud)

并且已经打开了端口8000,如下图所示.

在此输入图像描述

我在内核3.8.11-200上运行Django 1.4.2,Python 2.7.3,Fedora 18

任何帮助都非常感谢.谢谢.

python linux django fedora

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

可调用作为dict.get的默认参数,如果密钥存在则不调用它

我试图提供一个函数作为字典的get函数的默认参数,就像这样

def run():
   print "RUNNING"

test = {'store':1}
test.get('store', run())
Run Code Online (Sandbox Code Playgroud)

但是,运行此命令时,它将显示以下输出:

RUNNING
   1
Run Code Online (Sandbox Code Playgroud)

所以我的问题是,正如标题所说,有一种方法可以提供一个callable作为get方法的默认值,如果密钥存在则不调用它?

python dictionary

8
推荐指数
2
解决办法
3434
查看次数

在模板标签中获取模板名称(Django)

有没有办法在模板标签中获取模板名称(被解析)?我已经阅读了搜索但没有找到任何内容,只有这篇上一篇文章 在django模板中获取模板名称

这对我没什么帮助,因为答案依赖于settings.DEBUG是真的,在我的情况下不可能.

我真的不知道从哪里开始,所以欢迎任何建议:)

编辑

所以基本上我想要的是创建一个可插入的标签,当它渲染它检查Tag对象时,这将是标签对象的源

class Tag(models.Model):
    template = models.CharFIeld(max_length=50)
    name = models.CharField(max_length=100)
    plugins = models.ForeignKey(PluginBase)
Run Code Online (Sandbox Code Playgroud)

如果是一个标签对象,那么它会显示所有插件对象,如果没有,它会创建一个标签对象,该标签对象对模板标签和模板名称中提供的名称是唯一的,如果不能获得模板名称,那么我想我可以做每个名字都是独特的.对于那些熟悉django-cms的人来说,整个标签有点像占位符

python django django-templates

7
推荐指数
1
解决办法
5640
查看次数

Rabbit MQ无法启动

我已经使用以下RPM完成了RabbitMQ的安装

http://www.rabbitmq.com/releases/rabbitmq-server/v2.7.1/rabbitmq-server-2.7.1-1.noarch.rpm

我像这样安装它:

$ wget \ http://www.rabbitmq.com/releases/rabbitmq-server/v2.7.1/rabbitmq-server-2.7.1-1.noarch.rpm
$ rpm --nodeps -Uvh rabbitmq-server-2.7.1-1.noarch.rpm
Run Code Online (Sandbox Code Playgroud)

我使用--nodeps的原因是因为我从源代码安装了erlang,而rpm会尝试查找erlang.rpm依赖项忽略系统上的那个.

当我尝试启动Rabbit MQ服务器时,我收到此错误:

/usr/lib/rabbitmq/bin/rabbitmq-server: line 73: /var/lib/rabbitmq/mnesia/rabbit@
vz129.pid: Permission denied
{"init terminating in do_boot",{undef,[{rabbit_prelaunch,start,[]},{init,start_i
t,1},{init,start_em,1}]}}
Run Code Online (Sandbox Code Playgroud)

我使用CentOS版本4.9(最终版).

任何帮助表示赞赏.

erlang rabbitmq

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

django collectstatic overriding

我正在使用Django 1.3.1和contrib.collectstatic应用程序来管理我的静态文件.

我的项目结构是

myproject
    - settings.py
    - static-media
    - urls.py
    - media
    - manage.py
Run Code Online (Sandbox Code Playgroud)

其中static-media是包含此项目的静态文件的文件夹.在我的settings.py中,我有:

PROJECT_PATH = os.path.realpath(os.path.dirname(__file__))
STATIC_ROOT = os.path.join(PROJECT_PATH, "static")+'/'
STATIC_URL = "/static/"
STATICFILES_DIRS = (
        os.path.join(PROJECT_PATH, 'static-media'),
)
Run Code Online (Sandbox Code Playgroud)

我正在使用admin_tools来更改管理员的布局.但是我想从admin_tools覆盖特定的css文件(theming.css).所以在我的静态媒体文件夹中我放了admin_tools/css/theming.css.当我第一次运行时python manage.py collectstatic,它通过忽略admin_tools中的默认的theming.css并使用我在static-media中定义的那个来按预期工作.不幸的是,如果我再次运行该命令,它会覆盖我的css并添加默认值.

这是输出python manage.py findstatic admin_tools/css/theming.css:

Found 'admin_tools/css/theming.css' here:
  /home/paulo/Desktop/Projects/zennetwork/prd/zennetwork/static-media/admin_tools/css/theming.css
  /home/paulo/Desktop/Projects/zennetwork/prd/lib/python2.7/site-packages/admin_tools/theming/static/admin_tools/css/theming.css
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏.谢谢.

python django django-staticfiles

6
推荐指数
1
解决办法
6409
查看次数

向Python字典键添加前缀的最有效方法

所以我发现自己需要在Python字典中添加前缀。

基本上,我希望该字典的用户能够在字典实例化时添加前缀,在这种情况下,字典将保留该前缀,并且每次添加新键时,都会为其添加前缀。但是,如果出于某种原因未提供或更改前缀,我也想更改字典,这意味着旧字典键需要在保留其各自值的同时为其添加前缀。

用例:

基本上,我正在完成MWS API的最后一个api 。我围绕以下想法构建了api:每次调用都需要采用特定的参数,例如:

def get_report(self, marketplaceids):
    # Here I process marketplaceids which is a python list
    # and send the following to Amazon:

    MarketplaceIdList.Id.1: 123,
    MarketplaceIdList.Id.2: 345,
    MarketplaceIdList.Id.3: 4343

    # By doing this I eliminate the complexity of the arguments Amazon expects
Run Code Online (Sandbox Code Playgroud)

不幸的是,后两个api很难通过这种方式实现,因为它们利用了Amazon引入的称为的新“功能” Datatypes

这些“ Datatypes”是嵌套结构。例如:

我想从中调用CreateInboundShipment操作InboundShipmentAPI

该操作采用以下参数:

ShipmentId - String
InboundShipmentHeader - InboundShipmentHeader datatype
InboundShipmentItems - A list of InboundShipmentItem datatypes
Run Code Online (Sandbox Code Playgroud)

之所以会发生此问题,是因为InboundShipmentHeader是一个数据类型,该数据类型将另一个数据类型作为参数。最终,Amazon期望以下几点:

ShipmentId=102038383
InboundShipmentHeader.ShipmentName': 'somevalue',
InboundShipmentHeader.ShipFromAddress.Name': 'somevalue',
InboundShipmentHeader.ShipFromAddress.AddressLine1': …
Run Code Online (Sandbox Code Playgroud)

python performance dictionary

5
推荐指数
1
解决办法
2962
查看次数