小编Sur*_*rya的帖子

为什么python不能在所有区域处理非常大的数字?

我正在做一个难题,我必须处理订单数量10 ^ 18.但是,我发现python无法在所有区域处理非常大的数字.

具体来说,如果我们分配一个= 1000000000000000000(10 ^ 18)并进行基本的算术运算(+, - ,/,*),它的响应.但是,当我在range()中使用它时,它显示OverflowError

>>> a = 1000000000000000000
>>> a/2
500000000000000000L
>>> a*2
2000000000000000000L
>>> a+a
2000000000000000000L
>>> a*a
1000000000000000000000000000000000000L
>>> range(a)

Traceback (most recent call last):
  File "<pyshell#5>", line 1, in <module>
    range(a)
OverflowError: range() result has too many items
>>> xrange(a)

Traceback (most recent call last):
  File "<pyshell#6>", line 1, in <module>
    xrange(a)
OverflowError: Python int too large to convert to C long
Run Code Online (Sandbox Code Playgroud)

我使用的是Python 2.7.

  1. 我怎么能处理这样的情况?,什么是处理持有这些数字的谜题的最佳方式.(教程/书籍参考将不胜感激)
  2. 为什么Python无法在range()/ xrange()中处理它

我想在python 2.7中使用inbuild函数来完成它.那可能吗?

python largenumber

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

如何在Jquery Ajax表单提交中添加错误处理

这是我的代码

<script type="text/javascript">
$(document).ready(function() {
    $('#spc-comment-flag-form').submit(function() {
        $.ajax({
            data: $(this).serialize(),
            type: $(this).attr('method'),
            url: $(this).attr('action'), 
            success: function(data) {
                if( data['error'] == false) {
                    var msg = 'We got your flag. Our moderators will now look into it. You may close the window now!';
                    $('#spc-comment-flag-response').html(msg);
                }
                else {
                    $('#spc-comment-flag-response').html(data);
                }   
            },
        });
        return false;
    });
});
</script>
Run Code Online (Sandbox Code Playgroud)

编辑

在服务器端它的东西是这样的:

@csrf_protect
@login_required
def flag(request, comment_id, next=None):
    if not request.is_ajax():
        raise Http404
    data = {}
    if request.method == 'POST':
        ...
        data = simplejson.dumps(data)
        return …
Run Code Online (Sandbox Code Playgroud)

javascript jquery post

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

如何在django保存模型方法中获取对象的先前数据

假设我们有一个包含字段,myobj的对象。最初,这些字段设置为和并保存为f1f212pk=1

现在,我再次这样称呼它:

myobj.f1 = 11
myobj.f2 = 22
myobj.save()
Run Code Online (Sandbox Code Playgroud)

虽然我知道模型方法save(self, *args, **kwargs) ,但我们可以将自己的变量传递给它,覆盖该方法,做我们想做的事情。

无论如何,我们是否可以知道该对象的先前数据?使用一些内置参数?

django django-models

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

Eclipse是否存储了其目录中的任何信息?

我曾经使用过Eclipse Indigo(C/C++)和PyDev Plugin(用于Python).当我搞砸了IDE(尝试调整一些核心文件,为了好玩!),我想安装一个新的,这次我下载了Eclipse Indigo(用于Java).

Eclipse(C/C++)放在C:/

Eclipse(Java)甚至放在C:/

现在,当我打开Eclipse(Java)时,我发现了两件事:

  1. Eclipse的标题栏仍然显示 <C/C++ Eclipse>
  2. 有一个python的项目文件仍然打开,我在Eclipse C/C++ IDE上工作.此外,还出现了PyDev的错误(提到它没有安装).

我已经验证了"已安装的插件"列表,但没有找到任何与C/C++或python相关的插件.

现在,我有一个问题:

当我搜索谷歌并发现Eclipse不存储超出其目录的任何内容时,上面的内容如何显示?

可能存储了一些Temp/Cache文件.但是,我用"Eclipse"和"PyDev"搜索我的驱动器作为关键字并没有找到任何结果.

我甚至搜索了注册表项,但找不到任何东西.

到底发生了什么以及如何完全删除Eclipse?

eclipse

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

如何使用链接列表在 django 中查找下一个和上一个对象?

假设有一个问答网站。当在终点打开问题时/q/<id2>,它还应该提供到下一个/q/<id1>、上一个问题的链接/q/<id3>。假设该表是按pk值或时间戳的顺序排列的。

这可以通过创建如下我现在使用的方法来简单地解决:

def next_q(self):
    # Ques model contain all questions
    # this method is a model method of Ques
    all_q = Ques.objects.all()
    q = None
    count = 1
    if count < all_q.count():
        try:
            q = all_q.get(pk=self.pk + count)
            break
        except ObjectDoesNotExist:
            count += 1
    return q
Run Code Online (Sandbox Code Playgroud)

然而,我认为这种操作的成本足够高,Ques每当有问题/q/id被请求时,它都会查询所有问题(对象)。

我看到的一种可能的方法是使用链表的思想,其中下一个和上一个对象 ID 可以存储在当前对象中。

Ques模型中可能有两个字段

class Ques(models.Model):
    prev_q_id = models.IntegerField()
    next_q_id = models.IntegerField()
Run Code Online (Sandbox Code Playgroud)

每当创建、编辑、删除新的 Ques 对象时,这些都会更新。这确保我只会查询一个对象。但是我想知道这是否是一个好方法。如果不是我还能怎么办?

python django django-models

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

我应该使用Screen Scrapers或API来读取网站上的数据

我正在构建一个Web应用程序作为大学项目(使用Python),我需要从网站上阅读内容.它可能是互联网上的任何网站.

起初我想过使用像BeautifulSoup,lxml这样的Screen Scrapers来阅读内容(作者写的数据)但我无法根据一个逻辑搜索内容,因为每个网站都是根据不同的标准开发的.

因此我想到使用RSS/Atom(使用Universal Feed Parser),但我只能得到内容摘要!但我想要所有内容,而不仅仅是摘要.

那么,是否有一种方法可以使用一个逻辑,我们可以使用像BeautifulSoup,lxml等lib一样阅读网站的内容?

或者我应该使用网站提供的API.

如果我的博客作者博客可以使用谷歌数据API,我的工作变得容易,但麻烦的是,我是否需要为同一份工作为每个不同的API编写代码?

什么是最好的解决方案?

html python screen-scraping web-scraping

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

我们是否需要为每个POST请求进行CSRF验证?

我只是用POST方法构建一个简单的HTML表单,不幸的是我发现CSRF验证错误.

这只是一个在localhost上使用POST方法的简单html表单.没有涉及跨站点.我绝对可以通过使用来修复它,csrf_token但我仍然不明白为什么django要求我这样做..

此处不涉及重定向/ iframe ...

那么,为什么会这样呢?这是正常的吗?

# Also tried using RequestContext(request) but there isn't any change in the error

#settings.py 
'django.middleware.csrf.CsrfViewMiddleware' in MIDDLEWARE_CLASSES

#views.py 

# url for home page is "" i.e, http://127.0.0.1:8000/
def HomePage (request):
    if request.method == "POST":
        form = myForm(request.POST)
        if form.is_valid():
            data = form.cleaned_data
            context = { "myForm" : myForm(choices),
                        "values" : data,
                       }
            return render_to_response("home.html", context)
    else:
        form = myForm(choices)
    context = {"myForm" : form}
    return render_to_response("home.html", context)   


# home.html 

<div id="pingmeeForm">
            <form …
Run Code Online (Sandbox Code Playgroud)

python django post django-forms

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