问题编写它决定一个函数,如果日期是在未来 [英] Issue writing a function which determines if a date is in the future

查看:400
本文介绍了问题编写它决定一个函数,如果日期是在未来的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图定义接受某一年数,月数,天数为3个独立的参数)被称为inTheFuture(函数。该函数应返回一个布尔值(TRUE或FALSE)来表示的日期(年,月,日)参数是否在未来与否。

这是我不断收到错误消息:

 类型错误:浮点()参数必须是一个字符串或数字,而不是'元组'

我已经试过转换浮点,字符串,int和我不知所措我只是

这是我的code:

 进口SYS
进口日期时间年=输入(请输入年份:);
月= INT(输入(进入月:));
天= INT(输入(进入日:));高清getTodaysDate():
    返回datetime.datetime.today();
今日= getTodaysDate();高清inTheFuture():
    YMD =(年,月,日)
    如果浮动(年月日)GT;今天:
        返回true
    如果浮动(年月日)LT;今天:
        返回falseINF = inTheFuture();


解决方案

要使用日期(不包括时间)时,您可以使用 datetime.date 类:

 #!的/ usr / bin中/ env的python3
从进口日期时间日期高清in_future(date_to_test):
    无论* date_to_test *是在未来。
    返回date_to_test> date.today()input_date =日期(*地图(INT,输入(输入年 - 月 - 日).split(' - ')))
打印(得到{}。它是在未来?。格式(input_date))
打印(烨如果in_future(input_date)其他不)

I'm trying to to define a function called inTheFuture() that accepts a given year number, a month number, and a day number as 3 separate arguments. The function should return a Boolean value (True or False) to indicate whether the date (year, month, and day) parameters are in the future or not.

This is the error message I keep getting:

TypeError: float() argument must be a string or a number, not 'tuple'

I have tried converting float, string, int, and I'm just at a loss.

This is my code:

import sys
import datetime

year= input ("Enter Year: ");
month= int(input ("Enter Month: "));
day= int(input ("Enter Day: "));

def getTodaysDate():
    return datetime.datetime.today();
today = getTodaysDate();

def inTheFuture():
    ymd=(year,month,day)
    if float(ymd)>today:
        return true
    if float(ymd)<today:
        return false

inf = inTheFuture();

解决方案

To work with dates (without time), you could use datetime.date class:

#!/usr/bin/env python3
from datetime import date

def in_future(date_to_test):
    """Whether *date_to_test* is in the future."""
    return date_to_test > date.today()

input_date = date(*map(int, input("Enter Year-Month-Day: ").split('-')))
print("Got {}. Is it in the future?".format(input_date))
print("yup" if in_future(input_date) else "nope")

这篇关于问题编写它决定一个函数,如果日期是在未来的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆