【发布时间】:2016-05-30 23:09:41
【问题描述】:
我有一个包含 52 个表情符号的列表,但我只希望 10 个随机出现在表情符号备忘单/键盘中。
这就是我正在做的事情:
django 视图正在向我的模板传递一个 1 到 52 之间的 10 个随机数的列表,如下所示:context["random"] = random.sample(xrange(1,52),10)
另外,还有一个包含 52 个表情符号的列表正在传递,包含在上下文变量 context["emojis"] 中。此列表如下所示:
( [':)', ':-)', ':=)'], [':(', ':-(', ':=('], [';)', ';-)', ';=)', '(wink)'], [';(', ';-(', ';=(', '(cry)'], [':*', ':-*', ':=*', '(kiss)'], [':|', ':-|', ':=|', '(speechless)'], [':-?', ':?', ':=?', '(think)'], ['|(', '|-(', '|=(', '(dull)'], ['|-)', 'I-)', 'I=)', '(snooze)'], ['])', ']=)', '(grin)'], [':$', ':-$', ':=$', '(blush)'], [':D', ':-D', ':=D', ':d', ':-d', ':=d', '(laugh)'], [':O', ':-O', ':=O', ':o', ':-o', ':=o', '(surprised)'], ['8)', '8-)', '8=)', 'B)', 'B-)', 'B=)', '(cool)'], ['8-|', 'B-|', '8|', 'B|', '8=|', 'B=|', '(nerd)'])
这些不是全部 52 个表情符号,但你明白了。如果我在模板中打印{{ emojis.5 }},我会看到[':*', ':-*', ':=*', '(kiss)']。这个结果本身就是一个列表,因为可以通过所有这些符号制作亲吻表情符号。
总而言之,在这 52 个子列表中,我希望有 10 个 random 出现在我的模板中。此外,我只想打印每个随机选择的子列表中的第一项。
这是我实际尝试的:
{% for index in random %}
{{ emojis.index.0 }}
{% endfor %}
什么都没有出现。在我的脑海中,我认为这会通过emojis.index 获得10 个随机子列表,而.0 将确保它只返回第一项。
【问题讨论】:
-
伙计们,如果我错过了什么,请向我询问更多信息
标签: python django django-templates django-views