小编Sel*_*cuk的帖子

Django Registration Redux:如何将唯一标识符从用户名更改为电子邮件,并使用电子邮件作为登录名

django-registration-redux在我的项目中用于用户注册.它使用默认User模型username作为唯一标识符.

现在我们想要丢弃usernameemail用作唯一标识符.

而且我们也希望使用email而不是username登录.

怎么做到这一点?

是否可以在不更改AUTH_USER_MODEL设置的情况下执行此操作?

因为它来自官方文件

如果要设置AUTH_USER_MODEL,则应在创建任何迁移或manage.py首次运行迁移之前进行设置.

python django django-registration

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

随机选择一个包含特定元素的列表

给出几个清单

l = [[1,2,3,4,5],[1,6,7,8],[2,3,4],[1,9,10,13]]
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法可以使用random.choice随机选择一个包含1的列表?我尝试了像

random.choice(1 in l)

要么

random.choice(l, 1=True),但它们都不起作用。

python

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

Python 子字符串 - 将第 n 个字符拆分到某个字符串的左侧

我有以下示例字符串:

0015CB,0,0,01,006D,0016CF1,4,000D,01,0202,01,0E09,01,02,00,006D,0000,0,0,01,006D,00F4E7D,1,000D,01,0202,01,0E09,01,02,00,006D,0000,0,0,01,006D,0008184,8,000D,01,0202,01,0E09,01,02,00,006D,0000,0,0,01,006D,00FA704,9,000D,01,0202,01,0E09,01,02,00,006D,0000,0,0,01,006D,0014EC8,2,000D,01,0202,01,0E09,01,02,00,006D,0000,0,0,01,006D,00FAEEA,9,000D,01,0202,01,0E09,01,02,00,006D,0000,0,0,01,006D,00FADE9,5,000D,01,0202,01,0E09,01,02,00,006D,0000,0,0,01,006D,00FA5A5,3,000D
Run Code Online (Sandbox Code Playgroud)

请您告诉我如何在每次迭代的左侧获得 9 个字符"000D",因此第一个结果将是:

0016CF1,4
Run Code Online (Sandbox Code Playgroud)

第二次提取将是:

00F4E7D,1
Run Code Online (Sandbox Code Playgroud)

第三个是:

0008184,8
Run Code Online (Sandbox Code Playgroud)

等等。我已经尝试过 split 函数并且正在努力掌握正则表达式。

python split substring python-3.x

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

如何在 Python for 循环中使用多个变量?

我是一个 Java 人,目前正在学习 Python。我被困在如何在 Python for 循环中使用多个条件。

这是Java代码

for (int r = n-1, s = k+1; r > s; r--, s++)
    // some code 
Run Code Online (Sandbox Code Playgroud)

如何将其转换为 Python for 循环?

python for-loop python-3.x

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

向函数添加可选参数

我正在开发一个项目,我应该在现有代码库中添加新功能。作为其中的一部分,我需要向其中一个函数添加一个可选参数,但仅添加可选参数就会导致我的一些单元测试失败。

该函数最初如下所示:

def function(
    data1: list,
    data2: list,
    opt1: Optional[list],
)
Run Code Online (Sandbox Code Playgroud)

添加另一个可选参数后,它看起来像这样:

def function(
    data1: list,
    data2: list,
    opt1: Optional[list],
    new: Optional[dict],
)
Run Code Online (Sandbox Code Playgroud)

我在代码库中所做的唯一更改是添加此可选参数,它导致我的一些单元测试失败。我想知道是否有人知道可能是什么原因?

optional-parameters type-hinting python-3.x

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

Python程序运行一周,然后神秘失败

我有一个正常运行的python程序,然后在很长一段时间后失败,我不明白为什么会发生这种情况.

这是为了在我的覆盆子pi上开一个PiGlow板.
PiGlow

没有更好的处理,我让它以二进制格式显示时间,由制造商提供的clock.py来演示电路板.

代码如下所示:

from pyglow import PyGlow
from datetime import datetime

pyglow = PyGlow()

while True:
    time = datetime.now().time()
    hour,min,sec = str(time).split(":")
    sec,micro = str(sec).split(".")

    # do stuff with the hour, min, sec, write them to the LEDs

# that's all, no delay or anything else, so the loop runs like crazy
Run Code Online (Sandbox Code Playgroud)

它将正常运行一天或一周,然后失败,如下所示:

pi@pi ~/pyglow $ sudo python clock.py    
Traceback (most recent call last):    
  File "clock.py", line 37, in <module>  
    sec,micro = str(sec).split(".")    
ValueError: need more than 1 value …
Run Code Online (Sandbox Code Playgroud)

python crash python-2.7 raspberry-pi

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

无法解决ImportError:没有名为请求的模块

我读过这个问题

1)我安装了点子并执行

 pip install requests
Run Code Online (Sandbox Code Playgroud)

并得到

Requirement already satisfied (use --upgrade to upgrade): requests in /usr/local/lib/python2.7/dist-packages/requests-2.9.1-py2.7.egg
Cleaning up...
Run Code Online (Sandbox Code Playgroud)

2)我启动了python2 shell:

>>> from urllib.request import urlopen
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named request
Run Code Online (Sandbox Code Playgroud)

为什么我仍在捕获此异常?我做错了什么?

python pip python-2.7 python-3.x

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

导入错误:无法导入名称连接

我想在我的 django 应用程序中包含全文搜索。我为此使用 whoosh-haystack。当我在已安装的应用程序中包含 whoosh 和 haystack 并执行命令./manage.py时,出现导入错误。任何人都可以解决这个问题。

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'whoosh',
    'haystack',
    'galleryApp',
    'galleryAdmin',
]
Run Code Online (Sandbox Code Playgroud)

我得到的错误是

Traceback (most recent call last):
  File "./manage.py", line 10, in <module>
    execute_from_command_line(sys.argv)
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 353, in execute_from_command_line
    utility.execute()
  File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 327, in execute
    django.setup()
  File "/usr/local/lib/python2.7/dist-packages/django/__init__.py", line 18, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/usr/local/lib/python2.7/dist-packages/django/apps/registry.py", line 115, in populate
    app_config.ready()
  File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/apps.py", line 22, in ready
    self.module.autodiscover()
  File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/__init__.py", line 26, in autodiscover
    autodiscover_modules('admin', register_to=site) …
Run Code Online (Sandbox Code Playgroud)

django whoosh django-haystack

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

Python在一个列表中查找不在另一列表中的元素的索引

list_1 = ["a", "b", "c", "d", "e"]
list_2 = ["a", "c", "d"] 
Run Code Online (Sandbox Code Playgroud)

我希望其中的元素索引list_1不在中list_2。我希望在这里

[1, 4]
Run Code Online (Sandbox Code Playgroud)

就我而言,list_2list_1所有元素的唯一子集。没有使用显式循环的更好方法吗?

python list

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

输入具有多个键值类型的 Dit

我有一个 python 函数,它返回具有以下结构的字典

{
   (int, int): {string: {string: int, string: float}}
}
Run Code Online (Sandbox Code Playgroud)

我想知道如何使用类型提示来指定它。所以,这些位很清楚:

Dict[Tuple[int, int], Dict[str, Dict[str, # what comes here]]
Run Code Online (Sandbox Code Playgroud)

但是,内部字典具有两个键的int和值类型。float我不知道如何注释

python typing type-hinting python-3.x

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