首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >(Python)使用模将其余部分更改为小时和分钟

(Python)使用模将其余部分更改为小时和分钟
EN

Stack Overflow用户
提问于 2016-10-17 11:10:19
回答 2查看 2.5K关注 0票数 0

我现在刚开始学习python,偶然发现了这个问题:

练习2-7获取时间写入算法,该算法读取以秒为单位的时间量,然后显示等效的小时、分钟和剩余秒。一个小时相当于60分钟。·一分钟相当于60秒。

我是这样写的:

代码语言:javascript
复制
def amount_time(t):
  h = t//3600
  m = int((t/3600 - h)*60)
  s = int(((t/3600 - h)*60 - m)*60)
  print("Number of hours:",h)
  print("Number of minutes:",m)
  print("Number of Seconds:", s)
amount_time(5000)

有人告诉我,有一种更简单的方法来编写它,用模块来获得剩下的几分钟和几秒钟,有人能帮忙吗?谢谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-10-17 11:22:41

这只是“超出我的头脑”,因为我没有测试系统,我现在可以使用。

代码语言:javascript
复制
def amount_time(t):
    print("Number of Seconds:", t % 60)
    print("Number of Minutes:", (t // 60) % 60)
    print("Number of Hours:", (t // 3600))

"t % 60“做什么:

  1. 取t,除以60
  2. 去掉点上的每一个东西
  3. 乘60

有数字:

  1. 5000 / 60 = 83.33333
  2. => 0.33333
  3. 0.33333 * 60 = 20
票数 1
EN

Stack Overflow用户

发布于 2016-10-17 11:23:22

你计算的迷你数不正确,你用的是模块和小时。你可以用分钟来做同样的事情,就像你用秒做的一样:

代码语言:javascript
复制
m =     (t - h * 3600) // 60
s = int (t - h*3600 - m*60)
ms = int ((t - h*3600 - m*60 - s) * 1000) # milliseconds

要构建结果字符串,有更好的方法,f.e。

代码语言:javascript
复制
print '{}:{}:{}.{}'.format(h,m,s,ms)

如果在这里查看,您会发现更多的格式化方法和选项:

字符串格式的python标记

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40084887

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档