小编Cis*_*tin的帖子

Django“set_password()”功能不起作用

使用 Django 的“set_password()”函数更改站点上的用户密码后,密码将更改为加密字符串。但是,用户无法使用新密码或旧密码登录网站 - 之前输入的密码无效。这是获取密码的代码片段 -

if request.POST:
  password = request.POST['password'].encode('ascii','replace')
  confirm_password = request.POST['confirm_password'].encode('ascii','replace')
  if password == confirm_password:
    user.set_password(confirm_password)
    user.save()
    return HttpResponseRedirect('/reset/thanks/')
  else:
    return HttpResponseRedirect('/reset/' + user.get_profile().forgotpasswordcode + "/" + user.email + "/")
Run Code Online (Sandbox Code Playgroud)

即使帐户的密码更改为与原来相同的密码,加密的密码也会发生变化,并且用户无法登录。

有没有什么办法解决这一问题?谢谢。

python passwords django

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

什么是“TPE1”密钥错误?

我正在使用Python的mutagen模块来获取我拥有的各种 MP3 文件的艺术家。

这是给出错误的代码:

audio = EasyID3(C:\Users\Owner\Music\Music\Blue Öyster Cult\Blue Öyster Cult\Cities on Flame)
print audio["artist"]
Run Code Online (Sandbox Code Playgroud)

该代码适用于我的大多数 MP3 文件,但有少数几个不断出现以下错误:

密钥错误:'TPE1'

因为那个错误,我看不到艺术家。请注意,这些 MP3 文件都有一个艺术家,它们都没有特殊字符或类似的东西。

为什么会这样?我该如何解决?

谢谢

python mp3 id3 mutagen

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

如何在C++中重载非交换运算符的两种可能性?

我正在创建一个复数的类,所以我想让它变得更容易,我允许进行诸如a = b + c之类的操作,而不是a = b.add(c).例如,这是我添加两个复数的实现:

// An addition operator for the complex numbers
Complex Complex::operator + (Complex n) {
    return Complex(this->real + n.real, this->imaginary + n.imaginary);
}
Run Code Online (Sandbox Code Playgroud)

在这个例子中,添加复数a + b将与添加b + a具有相同的结果.

但是,在处理非交换运算符和整数时会出现问题.例如,除以整数或除以整数.我怎么能这样做:

a =复数/整数

a =整数/复数

给出正确答案?

换句话说,我怎样才能以两种方式重载运算符?

c++ operator-overloading complex-numbers

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

尝试安装psycopg2 == 2.6.1由于egg_info而失败?

我正在尝试运行以下命令:

 pip install psycopg2==2.6.1
Run Code Online (Sandbox Code Playgroud)

我得到以下错误:

命令“ python setup.py egg_info”在/ private / var / folders / mk / brv9xsjn14df5th28_k1nphw0000gn / T / pip-build-S1xSB8 / psycopg2中失败,错误代码为1

有没有什么办法解决这一问题?我试过升级pip和升级设置工具都无济于事。

python install egg pip

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

自定义pip安装命令未运行

我正在尝试为我正在编写的pip库运行一些预安装命令.我的设置文件如下:

from setuptools import setup                                                        

from setuptools.command.install import install                                      

class CustomInstall(install):                                                       
    def run(self):                                                                  
        install.run(self)                                                           
        print "TEST"                                                           

setup(                                                                              
      ...                                      
      cmdclass={'install': CustomInstall},
      ...) 
Run Code Online (Sandbox Code Playgroud)

基于运行自定义任务时调用`pip install`.

但是,pip安装不会打印"TEST".我在这里做错了吗?如何让这个setup.py文件实际打印?

更新:以下,FYI,确实引发属性错误:

from setuptools import setup                                                        

from setuptools.command.install import install                                      

class CustomInstall(install):                                                       
    def run(self):                                                                  
        install.run(self)                                                           
        raise AttributeError                                                        

setup(                                                                              
      ...                                      
      cmdclass={'install': CustomInstall},
      ...) 
Run Code Online (Sandbox Code Playgroud)

python pip package

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

无法打印出请求的文字?

我正在尝试在Python中打印出以下请求(使用请求模块):

r = requests.get("http://www.youtube.com", 
                params={
                    "search_query": "test"
                }).text 
Run Code Online (Sandbox Code Playgroud)

但是,在打印时,我收到以下错误:

UnicodeEncodeError:'charmap'编解码器不能编码位置32891-32894中的字符:字符映射到 <undefined>

我确定这不是模块本身,因为基于一些谷歌搜索似乎没有其他事件发生,并且它正在与我尝试的其他请求一起工作.似乎只有这个请求无法打印.

有谁知道如何打印它?

编辑:现在我真的很困惑:这个程序对我来说只运行了一次,并且自那次出现之后就没有工作过一次.

python get request character-encoding codec

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

模拟分离力量n个物体

我正在为在屏幕上走动的小生物写一个模拟.我有一个问题是,他们将靠得太近有时 - 我想,解决这个一个方法是有一定的阈值距离,并能在任何两个生物得到比这个距离近,力将推开他们.

然而,在我实现这个之前,我想知道除了暴力之外是否还有任何已知的算法在此输入图像描述 解.

我一直在研究一些不同的算法,其中一个值得注意的是Barnes-Hut算法 在此输入图像描述 时间 - 然而,我不确定这是否适合这个问题.

任何帮助表示赞赏

algorithm simulation performance physics

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

Django:只清理特定的模型字段?

我有一个 Django 模型,例如:

class MyModel(models.Model):
   no_validation = models.PositiveIntegerField(null=True, db_index=True)
   yes_validation = models.CharField(max_length=254, validators=[my_validator])
Run Code Online (Sandbox Code Playgroud)

我还有一个预先保存的钩子,类似于:

@receiver(pre_save, sender=MyModel)                                        
def run_full_clean(sender, instance, **kwargs):                                 
   instance.clean_fields() 
Run Code Online (Sandbox Code Playgroud)

我的问题是这种当前的方法会清理所有领域。我只想清理一个特定字段(称为 yes_validation 的字段)。有没有简单的方法来做到这一点?

我只知道exclude参数,但问题是我的班级有近一百个不同的字段,因此排除每个字段都会有点脏。

python django validation

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

如何通过 GET 请求发送参数?

我目前正在尝试向 YouTube 发出 GET 请求,以搜索其上的视频(使用 Python 以及请求模块)。以下是我正在做的请求:

r = requests.get("http://www.youtube.com/", 
        params={
            "search_query": "Test"
        }).text
Run Code Online (Sandbox Code Playgroud)

但是,在打印请求时,无论我将搜索查询更改为什么,它似乎都只是获取 YouTube 的主页。

有人知道为什么会发生这种情况吗?

谢谢

python get request

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

如何在Python中复制函数并设置默认参数?

假设我有以下定义:

def foo(x, y):
    return x + y
Run Code Online (Sandbox Code Playgroud)

然后我想要一个函数的副本foo(让我们称之为bar),x总是等于0.

bar(4)会返回4.

我怎么能用Python做到这一点?

谢谢!

python methods

3
推荐指数
2
解决办法
94
查看次数