使用我有2所列出:创建字典从2所列出,在Django模板
year_month_day_list = ['2017-02-12', '2017-02-11', '2017-02-10', '2017-02-09']
filename_prefix_list = ['2017-02-12_11-45-59', '2017-02-12_11-35-05', '2017-02-10_11-00-52', '2017-02-11_10-59-23', '2017-02-09_09-12-09']
如果我能抓住所有符合其相关的年月日的文件名:
def filter_files(file_list, filter_param):
return [f for f in file_list
if f.startswith(filter_param)]
for unique_day in year_month_day_list:
files_for_day = sorted(filter_files(
filename_prefix_list, unique_day), reverse=True)
如何创建一个使用unique_day作为键和当天相关文件名作为值的字典?
输出应该是这样的:
dict = {'2017-02-12': ['2017-02-12_11-45-59', '2017-02-12_11-35-05'], '2017-02-10': ['2017-02-10_11-00-52']}
那么,我该如何使用那些在我的模板?例如:
<div class="thumbnail-row" id="thumbnail_row">
<div class="row-date">
<span>{{ unique_day }}</span>
</div>
<div class="">
<form action="{{ filename_prefix }}/video/" method="post">
{% csrf_token %}
<input type="image" name="filename_prefix" value="{{ filename_prefix }}" src="{{ MEDIA_URL}}thumbnails/2017/02/{{ filename_prefix }}.jpg">
</form>
</div>
</div>
看起来这个工作很棒。但是,我希望结果以键值和值列表的降序返回。基本上我想要最近的一天,然后是最新文件的文件。你能建议我如何做到这一点? dct上的Sort()将删除这些值。 – brewcrazy
将'reverse = True'传递给'sorted'并将结果保存到'collections.OrderedDict' –
我将哪个结果保存到'collections.OrderedDict'?这是我现在的:'dct = {k:list(g)for k,g in groupby( sorted(sorted_filename_list,reverse = True),lambda x:x [:10])}' – brewcrazy