当前位置: 首页 > 编程笔记 >

详解Django将秒转换为xx天xx时xx分

翟越
2023-03-14
本文向大家介绍详解Django将秒转换为xx天xx时xx分,包括了详解Django将秒转换为xx天xx时xx分的使用技巧和注意事项,需要的朋友参考一下

Django将秒转换为xx天xx时xx分,具体代码如下所示:

from django.utils.translation import ngettext_lazy as _n

def humanize_seconds(secs):
  a_day = 86400
  an_hour = 3600
  a_minute = 60
  timetot = ''
  total_secs = secs
  if secs > a_day: # 60sec * 60min * 24hrs
    days = int(secs // a_day)
    # timetot += "{} {}".format(int(days), _('days'))
    timetot += _n('%(num)s day', '%(num)s days', days) % {'num': days}
    secs = secs - days * a_day

  if secs > an_hour:
    hrs = int(secs // an_hour)
    # timetot += " {} {}".format(int(hrs), _('hours'))
    timetot += ' '
    timetot += _n('%(num)s hour', '%(num)s hours', hrs) % {'num': hrs}
    secs = secs - hrs * an_hour

  if secs > a_minute and total_secs < a_day:
    mins = int(secs // a_minute)
    timetot += ' '
    timetot += _n('%(num)s minute', '%(num)s minutes', mins) % {'num': mins}
    secs = secs - mins * a_minute

  if secs > 0 and total_secs < an_hour:
    secs = int(secs)
    timetot += ' '
    timetot += _n('%(num)s second', '%(num)s seconds', secs) % {'num': secs}
  return timetot

if __name__ == "__main__":
  print(humanize_seconds(360200))

知识点扩展:django 将model转换为字典

from django.forms.models import model_to_dict
from projects.models import ProjectInformation

site = ProjectInformation.objects.get(id=6)
dict = model_to_dict(site)
dict
{'CRFmethod': '',
 'EDCprovider': '',
 'acceptancenum': '',
 'add_time': datetime.datetime(2017, 4, 20, 8, 4, 42, 751202, tzinfo=<UTC>),
 'begindate': None,
 'clinicalassis': '',
 'clinicalnum': '',
 'created_by': '',
 'created_date': None,
 'enddate': None,
 'ethicsreviewdate': None,
 'ethicsreviewpers': '',
 'ethicsreviewres': '',
 'ethicsreviewunit': '',
 'id': 6,
 'isimport': None,
 'leaderunit': None,
 'localcases': None,
 'medicalequipment': '',
 'mequipmenttype': '',
 'multicenter': '',
 'plannum': '',
 'proenname': '爱上地方',
 'proname': '打士大夫',
 'prostatus': '',
 'prosummary': '',
 'protype': '打是否',
 'regstudy': '是',
 'reportdate': None,
 'reportnum': '',
 'reportversion': '',
 'researchdesign': '',
 'researchtype': '',
 'responsible': '',
 'studytype': '器械类',
 'telephonenum': None,
 'totalcases': None,
 'treatmenttype': None,
 'unitnum': None}

总结

以上所述是小编给大家介绍的Django将秒转换为xx天xx时xx分,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对小牛知识库网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

 类似资料:
  • 我的教授希望两个变量(摄氏度和华氏度)都是双倍的,我为摄氏度设置了双倍声明;和华氏度; 不知何故,compile在JPanel的两行上都发现了两个错误。setBounds(xxx,xxx,变量,xx);因为它是“不兼容的类型:从double到int的可能有损转换” 当我尝试将变量更改为int时。错误是摄氏度的公式无法识别int。那么如何使它适用于双变量呢?

  • XX-Mini 软件说明 源码取自 XX-Net 项目,精简 web UI、php_proxy 以及 x_tunnel 等功能,只保留 gae_proxy 以及自动扫描IP功能。 用户数据保存到 data 目录,运行软件后会自动生成,支持 manual.ini 配置文件,自定义IP段 ip_range.txt。 代码为 Linux 版本,欢迎提交 commit,提交代码后一段时间内会同步到 Win

  • 问题内容: 在以下代码中使用SimpleDateFormatter.format时,startDateText TextView中12:00和12:59之间的小时显示为00:00到00:59,而从13:00开始,它们正确显示为13:xx,14: xx直到23:59。 -—根据要求重构代码当dtold.parse(…)中的字符串为in时,示例的输出小时为00:00,当其为“ 13:00”时,则正确为

  • 本文向大家介绍如何用JS/HTML将时间戳转换为“xx天前”的形式,包括了如何用JS/HTML将时间戳转换为“xx天前”的形式的使用技巧和注意事项,需要的朋友参考一下 如果我们有一份过去时间戳,如何使用JS/HTML将时间戳转换为“xx天前”的形式呢,以下是完整代码 当然,只在同一时区时适用。 你也可以通过Date类将具体时间转换为时间戳。 以上所述是小编给大家介绍的用JS/HTML将时间戳转换为

  • 问题内容: 它们是用于年轻一代垃圾收集的算法。 第二个(UseParNewGC)会与并发的终身生成垃圾收集一起自动激活(请参阅Java Concurrent和ParallelGC),但是,这两个并行算法之间有区别吗? 问题答案: 经过大量搜索之后,我找到的最好的解释是从Java Performance Tuning网站上的本月问题:1.4.1垃圾收集算法,2003年1月29日 新一代垃圾收集算法

  • 问题内容: 我在这里找到了JVM标志。关于它们的作用有更详细的解释吗? 问题答案: 设置此标志会将JVM进行的所有垃圾收集写入日志文件(或stdout,但它的用处不大),并且可以使用[此处](http://codingdict.com/questions/2045提到的工具进行分析。使用此信息,您可以微调垃圾回收配置。