小编jul*_*ria的帖子

如何使用Eclipse和PyDev将现有文件添加到项目中

我是Eclipse的新手,我一直在尝试导入一个与Eclipse分开的Django项目.如果有人可以给我一个关于如何导入我的Django项目的分步指南,那将是最有帮助的.

我能找到的只是导入文件层次结构,但导致导入不完整或导入我不想要的文件夹.任何帮助,将不胜感激.

eclipse django import project pydev

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

Pythonic方式从字符串的前面剥离所有0

我有一个字符串,稍后将转换为int().它是三位数,从0到3的任何一个可能是0.如何从字符串的左侧剥离0?

现在我正在使用string.lstrip('0')但是剥离所有0并使字符串为空,导致错误.

python

7
推荐指数
2
解决办法
9652
查看次数

比<__ main __.在0x1624710处的MyClass实例更漂亮的东西

这是我的课(尽可能简单):

class MyClass():
    def __init__(self, id):
        self.id = id

    def __str__(self):
        return "MyClass #%d" % self.id
Run Code Online (Sandbox Code Playgroud)

当我打印MyClass的一个对象时,我得到了这个美丽的字符串:MyClass #id.但是,当我只是在翻译中"显示"时,我仍然感到讨厌<__main__...>.有没有办法改变这种行为?

>>> c = MyClass(5)
>>> print c
MyClass #5
>>> c
<__main__.MyClass instance at 0x1624710>
Run Code Online (Sandbox Code Playgroud)

python class

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

将异常体存储在变量中

有没有办法执行try语句并将错误体返回为变量?

var = ''
try:
    error generating code
except:
    var = exception_body
Run Code Online (Sandbox Code Playgroud)

python exception try-catch

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

在itertools.products中命名iterables的一部分

我一直在阅读itertools,这似乎是一个非常强大的模块.我特别感兴趣,itertools.product()它似乎给了我可迭代输入的所有组合.

但是,我想知道每个输出中的哪些输入可迭代来自.例如,一个简单的标准示例是:

itertools.product([1, 2, 3], [1, 2])
Run Code Online (Sandbox Code Playgroud)

如果用户提供[1,2,3],[1,2]的输入,我将不知道他们进入了哪个顺序,因此得到的结果是

(1, 2)
Run Code Online (Sandbox Code Playgroud)

没有多大帮助,因为我不知道他们会走哪条路.是否有某种方式提供输入,如:

itertools.product(foo = [1, 2, 3], bar = [1, 2])
Run Code Online (Sandbox Code Playgroud)

然后得到如下输出:

output['foo'] = 1
output['bar'] = 2
Run Code Online (Sandbox Code Playgroud)

要么

output.foo = 1
output.bar = 2
Run Code Online (Sandbox Code Playgroud)

python python-itertools

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

保存模型前验证内联

假设我有这两个模型:

class Distribution(models.Model):
    name = models.CharField(max_length=32)

class Component(models.Model):
    distribution = models.ForeignKey(Distribution)
    percentage = models.IntegerField()
Run Code Online (Sandbox Code Playgroud)

我正在使用一个简单的在管理表单中TabularInline显示Components Distribution:

class ComponentInline(admin.TabularInline):
    model = Component
    extra = 1

class DistributionAdmin(admin.ModelAdmin):
    inlines = [ComponentInline]
Run Code Online (Sandbox Code Playgroud)

因此,我的目标是在保存之前验证总和100 的所有Components 的百分比Distribution.听起来很简单,所以我做了:

# ... Inside the Distribution model
def clean(self):
    # Sum of components must be 100
    total_sum = sum(comp.percentage for comp in self.component_set.all())
    if total_sum != 100:
        raise ValidationError('Sum of components must be 100%')
Run Code Online (Sandbox Code Playgroud)

但是这永远不会起作用,因为在Django中所有对象都在保存其外键或许多相关对象之前保存,这不是一个缺陷,它有一个原因:它不能先保存相关对象,因为它们对象是有关没有一个id定义,但(idNone …

python django foreign-keys

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

像“rm -f”那样强行删除文件或强行从目录中取消链接文件路径

我的代码如下 -

#!/usr/bin/env python
import time, glob, os, sys
from datetime import date, timedelta

try:
    dpath = sys.argv[1]+"/"
except:
    print "usage: " + sys.argv[0] +" <dir_path_to_purge_files>"
    sys.exit(1)
print dpath
day_minus_mtime = time.mktime(date.today().timetuple())
g = glob.glob(dpath+"*")
for f in g:
        try:
                if day_minus_mtime > os.path.getmtime(f):
                        os.remove(f)
                        print "Removed: "+f
        except OSError, e:
                print "Not able to Remove: "+f , e
Run Code Online (Sandbox Code Playgroud)

我相信 os.remove(file) 相当于 linux 中的“rm文件”。

我想知道“rm -f file”的等效函数。强行删除文件或强行从目录中取消链接文件路径。

上面的代码也试图清除比今天更旧的文件。我有一种情况,文件没有被删除,因为它由于所有权而被“写保护”。但是当我对同一个文件使用“rm -f”时;它正在被删除。

我认为最好问一个问题,即使这听起来很愚蠢

python linux file rm

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

Django无效的块标记:'endfor',预期'endblock'

TemplateSyntaxErrorDjango 可能是什么原因造成的?

Invalid block tag: 'endfor', expected 'endblock'
Run Code Online (Sandbox Code Playgroud)

到目前为止,我的模板非常简单:

{% extends 'base.html' %}
{% block content %}
    <div id='beerslist'>
        {$ for beer in beers %}
        {{ beer }}
        {% endfor %}
    </div>
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

查看回溯列表后,'beer'变量存在并返回一个数组.如何修复此语法错误?

python django render syntax-error django-templates

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

导入500GB文本文件的最快方法,只需要所需的部分

我有大约500GB的文本文件在几个月内分开.在这些文本文件中,前43行只是连接信息(不需要).接下来的75行是观察的描述符.接下来是4行(不需要),然后是下一次观察,即75行.

事情是我想要的是这75行(描述符在每个观察的相同位置),其特征如下:

ID: 5523
Date: 20052012
Mixed: <Null>
.
.
Run Code Online (Sandbox Code Playgroud)

我希望将5523;20052012;;..每个观察结果更改为csv格式.所以我最终得到了更小的文本文件.由于描述符是相同的,我知道第一个位置例如是ID.

一旦我完成文本文件,我将打开下一个并附加它(或者创建一个新文件更快?).

我所做的是非常低效,我一直打开文件.加载它.逐行删除这些观察结果.如果它对测试样品采取了相当大的一点,那么它显然不是最好的方法.

任何建议都会很棒.

python text replace

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

如何在特定索引中嵌入Instagram轮播?

我正在使用https://api.instagram.com/oembed嵌入Instagram轮播(例如https://www.instagram.com/p/BvRwa1tArMo)。

我想知道是否有办法选择轮播图片的索引。例如,在这种情况下,我希望嵌入显示第二张图片,而不是第一张图片。

我的简化代码是:

$.get(
  'https://api.instagram.com/oembed?url=https://www.instagram.com/p/BvRwa1tArMo&hidecaption=1&omitscript=1',
  function (data) {
    $('#ig-post').html(data.html);
  }
);
Run Code Online (Sandbox Code Playgroud)
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://www.instagram.com/embed.js"></script>
<div id="ig-post"></div>
Run Code Online (Sandbox Code Playgroud)

(由于某种原因,它在这里无法完全正常工作,但在jsfiddle中可以使用:https://jsfiddle.net/43veku7t/ )

javascript embed carousel instagram

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