Я хотел бы извлечь год с текущей даты с помощью Python.
В С# это выглядит так:
DateTime a = DateTime.Now()
a.Year
Что требуется в Python?
Я хотел бы извлечь год с текущей даты с помощью Python.
В С# это выглядит так:
DateTime a = DateTime.Now()
a.Year
Что требуется в Python?
На самом деле это почти то же самое в Python..: -)
import datetime
year = datetime.date.today().year
Конечно, дата не имеет связанного с этим времени, поэтому, если вам это тоже нужно, вы можете сделать то же самое с полным объектом datetime:
import datetime
year = datetime.datetime.today().year
(Разумеется, нет ничего другого, но вы можете хранить datetime.datetime.today() в переменной, прежде чем захватить год, конечно).
Следует отметить, что компоненты времени могут различаться между 32-битными и 64-битными питонами в некоторых версиях python (я думаю, это дерево 2.5.x). Таким образом, вы найдете такие вещи, как hour/min/sec, на некоторых 64-битных платформах, в то время как вы получаете час/минуту/секунду на 32-битных.
import datetime
a = datetime.datetime.today().year
или даже (как предложил Леннарт)
a = datetime.datetime.now().year
или даже
a = datetime.date.today().year
Другие ответы на этот вопрос, похоже, попали на него. Теперь, как бы вы это поняли без? Проверьте IPython, интерактивную оболочку Python, которая имеет автоматическое заполнение вкладки.
> ipython
import Python 2.5 (r25:51908, Nov 6 2007, 16:54:01)
Type "copyright", "credits" or "license" for more information.
IPython 0.8.2.svn.r2750 -- An enhanced Interactive Python.
? -> Introduction and overview of IPython features.
%quickref -> Quick reference.
help -> Python own help system.
object? -> Details about 'object'. ?object also works, ?? prints more.
In [1]: import datetime
In [2]: now=datetime.datetime.now()
In [3]: now.
нажмите вкладку несколько раз, и вам будут предложены члены объекта "now":
now.__add__ now.__gt__ now.__radd__ now.__sub__ now.fromordinal now.microsecond now.second now.toordinal now.weekday
now.__class__ now.__hash__ now.__reduce__ now.astimezone now.fromtimestamp now.min now.strftime now.tzinfo now.year
now.__delattr__ now.__init__ now.__reduce_ex__ now.combine now.hour now.minute now.strptime now.tzname
now.__doc__ now.__le__ now.__repr__ now.ctime now.isocalendar now.month now.time now.utcfromtimestamp
now.__eq__ now.__lt__ now.__rsub__ now.date now.isoformat now.now now.timetuple now.utcnow
now.__ge__ now.__ne__ now.__setattr__ now.day now.isoweekday now.replace now.timetz now.utcoffset
now.__getattribute__ now.__new__ now.__str__ now.dst now.max now.resolution now.today now.utctimetuple
и вы увидите, что now.year является членом объекта now.
Если вам нужен год из неизвестного объекта datetime:
tijd = datetime.datetime(9999, 12, 31, 23, 59, 59)
>>> tijd.timetuple()
time.struct_time(tm_year=9999, tm_mon=12, tm_mday=31, tm_hour=23, tm_min=59, tm_sec=59, tm_wday=4, tm_yday=365, tm_isdst=-1)
>>> tijd.timetuple().tm_year
9999