[英]python how to calculate age and name in one function
from datetime import date
def date_person():
name = input('Enter your name and press ENTER')
surname =input ('Enter your surname and press ENTER')
birth_year= input('Enter your birth_year and press ENTER')
name_list=name.split()
surname_list=surname.split()
print(name_list, surname_list, birth_year)
first = name[1][0]
second = surname[1][0]
days_in_year = 365.2425
age= int((date.today())- birth_year).days/days_in_year
print(name)
print(surname)
print(birth_year)
print("your initial:", first.upper(),'.',second.upper(),'.', "and your age:", age )
date_person()
我對日期時間有誤。 怎么了?
TypeError: unsupported operand type(s) for -: 'datetime.date' and 'str'
嘗試將您的birth_year 轉換為日期 object:
birth_year= int(input('Enter your birth_year and press ENTER'))
birth_year_date = date(birth_year, 1, 1)
那么日期之間的 calc diff 將返回一個 datetime.timeDelta object,現在您可以獲取 days 屬性:
age= int((date.today() - birth_year_date).days/days_in_year)
你應該確定birth_year 類型是int,為了解決這個問題使用
正確的出生年份 = int(出生年份)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.