我假设您对编程一无所知,并想尝试与世界上编程的挚爱– Python做点什么。
算法
该程序将非常简单:
- 询问用户要提醒什么
- 询问时间(以分钟为单位)
- 计算超时(分钟乘以秒)
- 等待指定的时间
- 提醒我在步骤1中的要求
尽管算法很简单,但是每个步骤的实现都可以使该应用程序非常有用。 例如,在步骤1和2中,我可以通过不同的渠道进行沟通:键盘,语音或消息传递应用程序。
我还可以更改算法本身,例如使其具有防死性能:如果您的计算机在步骤4中关闭,则它需要知道它能提醒您什么。 但是现在,让我们继续使用简单的东西。
执行。 步骤0:设定
我做一个简单的事情:采取我们算法的每一步,并展示如何在Python中实现它。 不过,首先,我需要做好准备。 这是我需要使用的Python命令:
import time
Import告诉Python使用我需要的工具来加载模块。 时间是模块的名称。 在该模块中,我需要一个称为“睡眠”的方法,该方法将使程序暂停一段固定的时间。
步骤1:要求提醒
我需要询问用户并得到答复。 在理想的世界中,我想要这样的代码:
reminder = user.ask( "What shall I remind you about?" )
在程序的某个地方,我需要定义什么用户并询问意思。 它可能是通过Telegram发送的消息,也可能是语音提示,或者使机器人面带笑容的用户接近并在屏幕上显示了该消息。 实现可能有所不同,我将在程序的单独位置进行定义。
但是我想要一个简单的实现,因此我将使用一些内置命令:
print( "What shall I remind you about?" )
Print将文本消息发送到Python的默认输出(在我们的示例中是命令行)。
text = str(input())
这表示:
取用户写的任何内容,将其视为文本,然后将其以“文本”的名称存储到内存中。 Input()读取用户输入的任何内容。 Str()将输入的内容转换为文本。 等于表示“用这样的名称将一件事放入内存”。
步骤2:要求时间
我需要几分钟的时间。 开始:
print( "In how many minutes?" )
local_time = float(input())
第二行表示:取用户键入的任何内容,将其视为数字,并以“ local_time”名称存储在内存中。
步骤3.计算超时
在提醒我们之前,我们的应用需要等待几分钟。 但是Python的time.sleep()方法需要几秒钟,而不是几分钟。 所以我需要将分钟转换为秒:
local_time = local_time * 60
内容为:取内存中名称为“ local_time”的任何内容,再乘以60,然后将其放入内存中,名称为“ local_time”。
步骤4.等待
现在,我需要在步骤0中加载的时间模块:
time.sleep(local_time)
内容为:从模块“时间”中采用方法“睡眠”。 从内存中找到名为“ local_time”的数据。 让该数据段“休眠”,看看会发生什么。
发生了什么:我在“ local_time”中有几秒钟的时间。 我将该数字指定为“睡眠”,程序将睡眠指定的秒数。 我知道它在睡觉,因为我已经阅读了模块“时间”的参考手册。
步骤5.提醒
还记得我的提醒文本以“文本”的名称存储在内存中吗? 是时候使用它了:
print(text)
这意味着:获取“文本”下内存中的所有内容并将其发送到输出。
与步骤1相似,U可以设置发送消息的完全不同的实现。 我本可以创建一个例程,用塑料3D打印我们的消息,或以文本形式点亮一些LED。 但是,我现在所需要的只是发送文本的主要机制。
最终代码
这是将起作用的代码:
import time
print( "What shall I remind you about?" )
text = str(input())
print( "In how many minutes?" )
local_time = float(input())
local_time = local_time * 60
time.sleep(local_time)
print(text)
如果将此输入到Jupyter笔记本中并运行(Shift + Enter),您将看到正在运行的程序:
而且,如果您想在Python上进行更多练习,可以尝试使用Yandex提供的关于Practicum的免费课程。