1

以下情况的最佳方法是什么...

在 Django 中,我有一个视图,其中包含一个名为 ' showItem' 的变量,它可以是trueor false。我想将 showItem 设置为 true 40%和 false 60%,稍后可以选择更改这些几率。

使用 Python 我应该怎么做?

部分视图:

 def get_context_data(self, **kwargs):
        context = super(EntryDetail, self).get_context_data(**kwargs)
        context['showItem'] = (odds?????)
        return context
4

2 回答 2

6

Here is another method:

import random

cur_num   = random.random()
threshold = 0.4

# showItem is true 60 % of the time
showItem = cur_num >= threshold

If you choose to change the threshold value later, you can just modify the threshold variable which is easier than the other methods listed.

于 2013-08-07T08:18:57.467 回答
2
import random
num = random.randint(0, 4)
context['showItem'] = True if num <= 1 else False

在这里,我认为@Xaranke 的答案更好,更灵活。我还在我的笔记本电脑上测试了性能randomrandint前者快了 10 倍。

于 2013-08-07T08:15:13.413 回答