对于以下代码,我想生成随机值,但KeyError at /book/copy/
'book_details__title'
Request Method: GET
Request URL: http://localhost:8000/book/copy/?book_details__title=abc
Django Version: 1.10.5
Exception Type: KeyError
Exception Value:
'book_details__title'
Exception Location: /Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7/site-packages/django_filters/filterset.py in qs, line 335
Python Executable: /Applications/MAMP/htdocs/python/01-virtual-env/bin/python
Python Version: 2.7.10
Python Path:
['/Applications/MAMP/htdocs/library-new/services',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python27.zip',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7/plat-darwin',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7/plat-mac',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7/plat-mac/lib-scriptpackages',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7/lib-tk',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7/lib-old',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7/lib-dynload',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac',
'/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7/site-packages',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7/site-packages/Django-1.10.5-py2.7.egg',
'/Applications/MAMP/htdocs/python/01-virtual-env/lib/python2.7/site-packages/MySQL_python-1.2.5-py2.7-macosx-10.12-intel.egg']
Server time: Tue, 24 Jan 2017 13:35:36 +0000
中的值最多为dfCombined["TotalFreeSize"]
,并且9.941458e+11
会抛出错误,我该怎么办?< / p>
我无法找到randint
函数..
randlong
答案 0 :(得分:0)
randint将两个值作为参数,两个都是int。下限值和上限值。它将在这些值之间返回一个int。
另一方面,mean(),std()返回浮点值,作为一组值的mean和std。
你应该做的是给randint函数中的int参数。
你可以: average_age_test = int ( dfCombined["TotalFreeSize"].mean() )
std_age_test = int ( dfCombined["TotalFreeSize"].std() )
希望有所帮助!如果它确实请upvote:)
样品:
输入:
A = int (9.941458e+11)
random.randint(0, A)
输出:
153271550649L (type: long)
答案 1 :(得分:0)
您可以简单地将0到1之间的随机值(使用random
生成)映射到您的最大期望值,并且python将适当地投射它。这似乎适用于非常大的max
值:
import random
max = 9.941458e91 # notice the '91' exponent here!
for i in xrange(10):
val = long(random.random() * max)
print val
print type(val)
print
示例输出(单值):
45525909158271540655933151699075210889481964268830820171688052775301692920778132706971090944
<type 'long'>