در بسیاری از پروژههای علوم داده و برنامه نویسی، نیاز به مدیریت و پردازش تاریخ و زمان وجود دارد. کتابخانه datetime در پایتون یک ابزار قدرتمند برای نمایش، محاسبه و مقایسه مقادیر زمانی است. این کتابخانه متدها و توابع لازم را برای سه بخش اصلی فراهم میکند:
-
نمایش تاریخ و زمان (Date Time Representation)
-
محاسبات تاریخ و زمان (Date Time Arithmetic)
-
مقایسه تاریخ و زمان (Date Time Comparison)
در ادامه هر بخش را با مثال بررسی میکنیم.
1. نمایش تاریخ و زمان (Date Time Representation)
کتابخانه datetime در پایتون امکان نمایش یک تاریخ و اجزای آن را فراهم میکند. همچنین، مشخصه های قالب بندی (Format Specifiers) وجود دارند که برای نمایش بخش های حروفی یک تاریخ مانند نام ماه یا نام روز هفته استفاده می شوند. کد زیر تاریخ امروز و اجزای مختلف آن را نمایش می دهد:
1 2 3 4 5 6 7 8 9 10 11 |
import datetime print 'The Date Today is :', datetime.datetime.today() date_today = datetime.date.today() print date_today print 'This Year :', date_today.year print 'This Month :', date_today.month print 'Month Name:',date_today.strftime('%B') print 'This Week Day :', date_today.day print 'Week Day Name:',date_today.strftime('%A') |
وقتی کد بالا را اجرا میکنیم، نتیجه زیر را تولید میکند:
1 2 3 4 5 6 7 |
The Date Today is : 2018-04-22 15:38:35.835000 2018-04-22 This Year : 2018 This Month : 4 Month Name: April This Week Day : 22 Week Day Name: Sunday |
2. محاسبات تاریخ و زمان (Date Time Arithmetic)
برای انجام محاسبات روی تاریخها، تاریخهای مختلف را در متغیرها ذخیره میکنیم و سپس با استفاده از عملگرهای ریاضی یا شیء timedelta
تغییرات زمانی را اعمال میکنیم.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
import datetime #Capture the First Date day1 = datetime.date(2018, 2, 12) print 'day1:', day1.ctime() # Capture the Second Date day2 = datetime.date(2017, 8, 18) print 'day2:', day2.ctime() # Find the difference between the dates print 'Number of Days:', day1-day2 date_today = datetime.date.today() # Create a delta of Four Days no_of_days = datetime.timedelta(days=4) # Use Delta for Past Date before_four_days = date_today - no_of_days print 'Before Four Days:', before_four_days # Use Delta for future Date after_four_days = date_today + no_of_days print 'After Four Days:', after_four_days |
وقتی کد بالا را اجرا میکنیم، خروجی زیر را نمایش می دهد:
1 2 3 4 5 |
day1: Mon Feb 12 00:00:00 2018 day2: Fri Aug 18 00:00:00 2017 Number of Days: 178 days, 0:00:00 Before Four Days: 2018-04-18 After Four Days: 2018-04-26 |
3. مقایسه تاریخ و زمان (Date Time Comparison)
در مقایسه تاریخ و زمان از عملگرهای منطقی استفاده میکنیم. اما باید دقت کنیم که بخشهای صحیح تاریخها را با یکدیگر مقایسه کنیم. در مثال زیر، تاریخهای آینده و گذشته را در نظر گرفته و آنها را با استفاده از دستور if
در پایتون و همراه با عملگرهای منطقی مقایسه میکنیم.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 |
import datetime date_today = datetime.date.today() print 'Today is: ', date_today # Create a delta of Four Days no_of_days = datetime.timedelta(days=4) # Use Delta for Past Date before_four_days = date_today - no_of_days print 'Before Four Days:', before_four_days after_four_days = date_today + no_of_days date1 = datetime.date(2018,4,4) print 'date1:',date1 if date1 == before_four_days : print 'Same Dates' if date_today > date1: print 'Past Date' if date1 < after_four_days: print 'Future Date' |
وقتی کد بالا را اجرا میکنیم، نتیجه زیر را نمایش میدهد:
1 2 3 4 5 |
Today is: 2018-04-22 Before Four Days: 2018-04-18 date1: 2018-04-04 Past Date Future Date |
راستی! برای دریافت مطالب جدید در کانال تلگرام یا پیج اینستاگرام سورس باران عضو شوید.
- انتشار: ۱۸ مرداد ۱۴۰۴
دسته بندی موضوعات
- آموزش ارز دیجیتال
- آموزش برنامه نویسی
- آموزش متنی برنامه نویسی
- اطلاعیه و سایر مطالب
- پروژه برنامه نویسی
- دوره های تخصصی برنامه نویسی
- رپورتاژ
- فیلم های آموزشی
- ++C
- ADO.NET
- Adobe Flash
- Ajax
- AngularJS
- apache
- ARM
- Asp.Net
- ASP.NET MVC
- AVR
- Bootstrap
- CCNA
- CCNP
- CMD
- CSS
- Dreameaver
- EntityFramework
- HTML
- IOS
- jquery
- Linq
- Mysql
- Oracle
- PHP
- PHPMyAdmin
- Rational Rose
- silver light
- SQL Server
- Stimulsoft Reports
- Telerik
- UML
- VB.NET&VB6
- WPF
- Xml
- آموزش های پروژه محور
- اتوکد
- الگوریتم تقریبی
- امنیت
- اندروید
- اندروید استودیو
- بک ترک
- بیسیک فور اندروید
- پایتون
- جاوا
- جاوا اسکریپت
- جوملا
- دلفی
- دوره آموزش Go
- دوره های رایگان پیشنهادی
- زامارین
- سئو
- ساخت CMS
- سی شارپ
- شبکه و مجازی سازی
- طراحی الگوریتم
- طراحی بازی
- طراحی وب
- فتوشاپ
- فریم ورک codeigniter
- فلاتر
- کانستراکت
- کریستال ریپورت
- لاراول
- معماری کامپیوتر
- مهندسی اینترنت
- هوش مصنوعی
- یونیتی
- کتاب های آموزشی
- Android
- ASP.NET
- AVR
- LINQ
- php
- Workflow
- اچ تی ام ال
- بانک اطلاعاتی
- برنامه نویسی سوکت
- برنامه نویسی موبایل
- پاسکال
- پایان نامه
- پایتون
- جاوا
- جاوا اسکریپت
- جی کوئری
- داده کاوی
- دلفی
- رباتیک
- سئو
- سایر کتاب ها
- سخت افزار
- سی اس اس
- سی پلاس پلاس
- سی شارپ
- طراحی الگوریتم
- فتوشاپ
- مقاله
- مهندسی نرم افزار
- هک و امنیت
- هوش مصنوعی
- ویژوال بیسیک
- نرم افزار و ابزار برنامه نویسی
- وردپرس