Date Time. Date Свойство
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает компоненту даты этого экземпляра.
public: property DateTime Date < DateTime get(); >;
public DateTime Date
member this.Date : DateTime
Public ReadOnly Property Date As DateTime
Значение свойства
Новый объект с такой же датой, как этот экземпляр и значением времени, равным полуночи (00:00:00).
Примеры
В следующем примере свойство используется Date для извлечения компонента даты значения с его компонентом DateTime времени, равным нулю (или 0:00:00, или полночь). В нем также показано, что в зависимости от строки формата, используемой при отображении DateTime значения, компонент времени может по-прежнему отображаться в форматированных выходных данных.
using namespace System; void main() < DateTime^ date1 = gcnew DateTime(2008, 6, 1, 7, 47, 0); Console::WriteLine(date1->ToString()); // Get date-only portion of date, without its time. DateTime dateOnly = date1->Date; // Display date using short date string. Console::WriteLine(dateOnly.ToString("d")); // Display date using 24-hour clock. Console::WriteLine(dateOnly.ToString("g")); Console::WriteLine(dateOnly.ToString(L"MM/dd/yyyy HH:mm")); > // The example displays the following output to the console: // 6/1/2008 7:47:00 AM // 6/1/2008 // 6/1/2008 12:00 AM // 06/01/2008 00:00
using System; public class Example < public static void Main() < DateTime date1 = new DateTime(2008, 6, 1, 7, 47, 0); Console.WriteLine(date1.ToString()); // Get date-only portion of date, without its time. DateTime dateOnly = date1.Date; // Display date using short date string. Console.WriteLine(dateOnly.ToString("d")); // Display date using 24-hour clock. Console.WriteLine(dateOnly.ToString("g")); Console.WriteLine(dateOnly.ToString("MM/dd/yyyy HH:mm")); >> // The example displays output like the following output: // 6/1/2008 7:47:00 AM // 6/1/2008 // 6/1/2008 12:00 AM // 06/01/2008 00:00
open System let date1 = DateTime(2008, 6, 1, 7, 47, 0) printfn $"" // Get date-only portion of date, without its time. let dateOnly = date1.Date // Display date using short date string. printfn $"" // Display date using 24-hour clock. printfn $"" printfn $"""""" // The example displays output like the following output: // 6/1/2008 7:47:00 AM // 6/1/2008 // 6/1/2008 12:00 AM // 06/01/2008 00:00
Module Example Public Sub Main() Dim date1 As Date = #6/1/2008 7:47AM# Console.WriteLine(date1.ToString()) ' Get date-only portion of date, without its time. Dim dateOnly As Date = date1.Date ' Display date using short date string. Console.WriteLine(dateOnly.ToString("d")) ' Display date using 24-hour clock. Console.WriteLine(dateOnly.ToString("g")) Console.WriteLine(dateOnly.ToString("MM/dd/yyyy HH:mm")) End Sub End Module ' The example displays output like the following: ' 6/1/2008 7:47:00 AM ' 6/1/2008 ' 6/1/2008 12:00 AM ' 06/01/2008 00:00
Комментарии
Значение свойства возвращаемого DateTime значения совпадает со значением Kind текущего экземпляра .
DateTime Поскольку тип представляет как даты, так и время в одном типе, важно избегать неправильного толкования даты, возвращаемой свойствомDate, как даты и времени.
Работа с датами и временем
Для работы с датами и временем в .NET предназначена структура DateTime . Она представляет дату и время от 00:00:00 1 января 0001 года до 23:59:59 31 декабря 9999 года.
Для создания нового объекта DateTime также можно использовать конструктор. Пустой конструктор создает начальную дату:
DateTime dateTime = new DateTime(); Console.WriteLine(dateTime); // 01.01.0001 0:00:00
То есть мы получим минимально возможное значение, которое также можно получить следующим образом:
Console.WriteLine(DateTime.MinValue);
Чтобы задать конкретную дату, нужно использовать один из конструкторов, принимающих параметры:
DateTime date1 = new DateTime(2015, 7, 20); // год - месяц - день Console.WriteLine(date1); // 20.07.2015 0:00:00
DateTime date1 = new DateTime(2015, 7, 20, 18, 30, 25); // год - месяц - день - час - минута - секунда Console.WriteLine(date1); // 20.07.2015 18:30:25
Если необходимо получить текущую время и дату, то можно использовать ряд свойств DateTime:
Console.WriteLine(DateTime.Now); Console.WriteLine(DateTime.UtcNow); Console.WriteLine(DateTime.Today);
20.07.2015 11:43:33 20.07.2015 8:43:33 20.07.2015 0:00:00
Свойство DateTime.Now берет текущую дату и время компьютера, DateTime.UtcNow — дата и время относительно времени по Гринвичу (GMT) и DateTime.Today — только текущая дата.
При работе с датами надо учитывать, что по умолчанию для представления дат применяется григорианский календарь. Но что будет, если мы захотим получить день недели для 5 октября 1582 года:
DateTime someDate = new DateTime(1582, 10, 5); Console.WriteLine(someDate.DayOfWeek);
Консоль высветит значение Tuesday, то есть вторник. Однако, как может быть известно из истории, впервые переход с юлианского календаря на григорианский состоялся в октябре 1582 года. Тогда после даты 4 октября (четверг) (еще по юлианскому календарю) сразу перешли к 15 октября (пятница)(уже по григорианскому календарю). Таким образом, фактически выкинули 10 дней. То есть после 4 октября шло 15 октября.
В большинстве случаев данный факт вряд ли как-то повлияет на вычисления, однако при работе с очень давними датами данный аспект следует учитывать.
Операции с DateTime
Основные операции со структурой DateTime связаны со сложением или вычитанием дат. Например, надо к некоторой дате прибавить или, наоборот, отнять несколько дней.
Для добавления дат используется ряд методов:
- Add(TimeSpan value) : добавляет к дате значение TimeSpan
- AddDays(double value) : добавляет к текущей дате несколько дней
- AddHours(double value) : добавляет к текущей дате несколько часов
- AddMinutes(double value) : добавляет к текущей дате несколько минут
- AddMonths(int value) : добавляет к текущей дате несколько месяцев
- AddYears(int value) : добавляет к текущей дате несколько лет
Например, добавим к некоторой дате 3 часа:
DateTime date1 = new DateTime(2015, 7, 20, 18, 30, 25); // 20.07.2015 18:30:25 Console.WriteLine(date1.AddHours(3)); // 20.07.2015 21:30:25
Для вычитания дат используется метод Subtract(DateTime date) :
DateTime date1 = new DateTime(2015, 7, 20, 18, 30, 25); // 20.07.2015 18:30:25 DateTime date2 = new DateTime(2015, 7, 20, 15, 30, 25); // 20.07.2015 15:30:25 Console.WriteLine(date1.Subtract(date2)); // 03:00:00
Здесь даты различаются на три часа, поэтому результатом будет дата «03:00:00».
Метод Substract не имеет возможностей для отдельного вычитания дней, часов и так далее. Но это и не надо, так как мы можем передавать в метод AddDays() и другие методы добавления отрицательные значения:
// вычтем три часа DateTime date1 = new DateTime(2015, 7, 20, 18, 30, 25); // 20.07.2015 18:30:25 Console.WriteLine(date1.AddHours(-3)); // 20.07.2015 15:30:25
Кроме операций сложения и вычитания еще есть ряд методов форматирования дат:
DateTime date1 = new DateTime(2015, 7, 20, 18, 30, 25); Console.WriteLine(date1.ToLocalTime()); // 20.07.2015 21:30:25 Console.WriteLine(date1.ToUniversalTime()); // 20.07.2015 15:30:25 Console.WriteLine(date1.ToLongDateString()); // 20 июля 2015 г. Console.WriteLine(date1.ToShortDateString()); // 20.07.2015 Console.WriteLine(date1.ToLongTimeString()); // 18:30:25 Console.WriteLine(date1.ToShortTimeString()); // 18:30
Метод ToLocalTime() преобразует время UTC в локальное время, добавляя смещение относительно времени по Гринвичу. Метод ToUniversalTime() , наоборот, преобразует локальное время во время UTC, то есть вычитает смещение относительно времени по Гринвичу. Остальные методы преобразуют дату к определенному формату.
Как в python получить текущую дату и время
datetime.fromtimestamp(timestamp) — дата из стандартного представления времени.
datetime.date() — объект даты (с отсечением времени).
datetime.time() — объект времени (с отсечением даты).
datetime.combine(date, time) — объект datetime из комбинации объектов date и time.
datetime.replace([year[, month[, day[, hour[, minute[, second[, microsecond[, tzinfo]]]]]]]]) — возвращает новый объект datetime с изменёнными атрибутами.
datetime.weekday() — день недели в числовом формате, понедельник — 0, воскресенье — 6.
datetime.isoweekday() — день недели в числовом формате, понедельник — 1, воскресенье — 7.
datetime.strptime(date_string, format) — преобразует строку в datetime.
datetime.strftime(format) — преобразует datetime в строку в datetime.
Опции strftime из документации на модуль time
Datetime python3 как вывести только время?
Для этого Вам нужно использовать форматированный вывод. Например:
import datetime date = datetime.datetime.today() print(date.strftime('%H:%M'))
Более подробно можно почитать здесь.
Отслеживать
ответ дан 10 сен 2020 в 19:31
11.7k 9 9 золотых знаков 28 28 серебряных знаков 40 40 бронзовых знаков
import time time = time.asctime() print(time[11:-8])
Отслеживать
ответ дан 10 сен 2020 в 19:29
31 4 4 бронзовых знака
Ну можно через костыль str. Преобразовать в строку и вывечти первый 5 символов. Но это такое.. Думаю тут получше предложат
print(str((datetime.datetime.now(datetime.timezone.utc) + delta).time())[:5])
Отслеживать
ответ дан 10 сен 2020 в 19:35
1,341 5 5 серебряных знаков 10 10 бронзовых знаков
strftime() and strptime() Format Codes
The following is a list of all the format codes that the 1989 C standard requires, and these work on all platforms with a standard C implementation.
Отслеживать
ответ дан 11 сен 2020 в 7:59
2,687 6 6 серебряных знаков 13 13 бронзовых знаков
- python
- python-3.x
- datetime
- timezone
-
Важное на Мете
Похожие
Подписаться на ленту
Лента вопроса
Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.
Дизайн сайта / логотип © 2024 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2024.1.8.3130
Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.