Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/362.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用for循环打印时间序列_Python_Python 3.x_For Loop - Fatal编程技术网

Python 使用for循环打印时间序列

Python 使用for循环打印时间序列,python,python-3.x,for-loop,Python,Python 3.x,For Loop,我想创建一个打印以下内容的循环: "The train will leave at 13:36" "The train will leave at 13:56" "The train will leave at 14:16" "The train will leave at 14:36" "The train will leave at 14:56" "The train will leave at 15:16" etc. etc... 我有一个密码,上面写着: h = 13 m = 36

我想创建一个打印以下内容的循环:

"The train will leave at 13:36"
"The train will leave at 13:56"
"The train will leave at 14:16"
"The train will leave at 14:36"
"The train will leave at 14:56"
"The train will leave at 15:16"
etc. etc...
我有一个密码,上面写着:

h = 13 
m = 36

for i in range(5):
    print("The train will leave at {}:{} ".format(h,m))
    m = m + 20

    if 60 <= m:
        break
    print("The train will leave at {}:{} ".format(h,m))
    h = h+1
    m = m-60+20
我如何修复它,使分钟增加20分钟,并且每次达到60分钟时,它应该输出正确的时间…

用于处理分钟和小时,即模运算符
%
和楼层划分
/

h = 13 
m = 36

for i in range(10):
    print("The train will leave at {}:{} ".format(h,m))
    h = h+((m+20)//60)
    m = (m+20)%60
    if h == 24:
        h = 0
注意最后两行:当
h==24

用于处理分钟和小时时,您应该检查小时值以返回到0,即模数运算符
%
和楼层划分
/

h = 13 
m = 36

for i in range(10):
    print("The train will leave at {}:{} ".format(h,m))
    h = h+((m+20)//60)
    m = (m+20)%60
    if h == 24:
        h = 0

注意最后两行:当
h==24

稍微修改代码版本时,您应该检查小时值以返回0。只需使用
if
检查分钟数。如果分钟数大于60,则将小时数增加1,并通过减去60将分钟数倒回

h = 13 
m = 36

for i in range(5):
    if 60 <= m:
        m = m-60
        h = h+1
    print("The train will leave at {}:{} ".format(h,m))       
    m = m + 20

# The train will leave at 13:36 
# The train will leave at 13:56 
# The train will leave at 14:16 
# The train will leave at 14:36 
# The train will leave at 14:56     
h=13
m=36
对于范围(5)中的i:

如果60代码有轻微的修改版本。只需使用
if
检查分钟数。如果分钟数大于60,则将小时数增加1,并通过减去60将分钟数倒回

h = 13 
m = 36

for i in range(5):
    if 60 <= m:
        m = m-60
        h = h+1
    print("The train will leave at {}:{} ".format(h,m))       
    m = m + 20

# The train will leave at 13:36 
# The train will leave at 13:56 
# The train will leave at 14:16 
# The train will leave at 14:36 
# The train will leave at 14:56     
h=13
m=36
对于范围(5)中的i:

如果60您应该尝试%运算符

运算符是一种很容易理解的运算符,它提供左操作数和右操作数之间除法的剩余部分。如果你在大学里学习过群论或抽象代数,那么定义这个操作符会变得更专业一些

基本上从给定的一分钟开始,增加20分钟。当分钟数超过60分钟时,我们需要增加小时数。但我们需要重置分钟数。所以当
m
第一次达到76时,我们将其设置回
76-(1*60)=16
。请注意,
m
将永远不会超过120,除非从开始设置为大于99的数字

我想你真正想要的是这个

h=13
m=36
对于范围(5)中的i:
打印(“列车将在{}:{}发车”。格式(h,m))
m=m+20
如果m>=60:
h+=1
m=m%60
输出

列车将于13:36发车 #火车将于13:56发车 #火车将于14:16发车 #火车将于14:36发车 #火车将于14:56发车
但您可能还应该说明
h
何时超过24。所以
如果h>=24:h=0


再次假设您总是从60以下的m开始。

您应该尝试%运算符

运算符是一种很容易理解的运算符,它提供左操作数和右操作数之间除法的剩余部分。如果你在大学里学习过群论或抽象代数,那么定义这个操作符会变得更专业一些

基本上从给定的一分钟开始,增加20分钟。当分钟数超过60分钟时,我们需要增加小时数。但我们需要重置分钟数。所以当
m
第一次达到76时,我们将其设置回
76-(1*60)=16
。请注意,
m
将永远不会超过120,除非从开始设置为大于99的数字

我想你真正想要的是这个

h=13
m=36
对于范围(5)中的i:
打印(“列车将在{}:{}发车”。格式(h,m))
m=m+20
如果m>=60:
h+=1
m=m%60
输出

列车将于13:36发车 #火车将于13:56发车 #火车将于14:16发车 #火车将于14:36发车 #火车将于14:56发车
但您可能还应该说明
h
何时超过24。所以
如果h>=24:h=0


再次假设您总是从60以下的m开始。

您可以使用标准库中的
datetime
模块:

from datetime import timedelta, datetime

t = datetime(hour=13, minute=36, year=2019, month=6, day=9)

for i in range(5):
    print("The train will leave at {}:{} ".format(t.hour,t.minute))
    t += timedelta(minutes=20)
印刷品:

The train will leave at 13:36 
The train will leave at 13:56 
The train will leave at 14:16 
The train will leave at 14:36 
The train will leave at 14:56 

您可以使用标准库中的
datetime
模块:

from datetime import timedelta, datetime

t = datetime(hour=13, minute=36, year=2019, month=6, day=9)

for i in range(5):
    print("The train will leave at {}:{} ".format(t.hour,t.minute))
    t += timedelta(minutes=20)
印刷品:

The train will leave at 13:36 
The train will leave at 13:56 
The train will leave at 14:16 
The train will leave at 14:36 
The train will leave at 14:56 

使用以下if语句检查小时更改,我已更改小时和分钟以进行双重检查

h = 15 
m = 53

for i in range(5):
    print("The train will leave at {}:{} ".format(h,m))
    m = m + 20
    if m >= 60:
        h = h+1
        m-=60
        print("The train will leave at {}:{} ".format(h,m))
        m = m + 20
执行将是:

The train will leave at 15:53 
The train will leave at 16:13 
The train will leave at 16:33 
The train will leave at 16:53 
The train will leave at 17:13 
The train will leave at 17:33 
The train will leave at 17:53 
The train will leave at 18:13

使用以下if语句检查小时更改,我已更改小时和分钟以进行双重检查

h = 15 
m = 53

for i in range(5):
    print("The train will leave at {}:{} ".format(h,m))
    m = m + 20
    if m >= 60:
        h = h+1
        m-=60
        print("The train will leave at {}:{} ".format(h,m))
        m = m + 20
执行将是:

The train will leave at 15:53 
The train will leave at 16:13 
The train will leave at 16:33 
The train will leave at 16:53 
The train will leave at 17:13 
The train will leave at 17:33 
The train will leave at 17:53 
The train will leave at 18:13

使用
divmod
函数使用
divmod
函数