Python DateTime, TimeDelta, Strftime

آموزش توابع DateTime ، TimeDelta ، Strftime در پایتون با مثال

folderسایر
comments1 دیدگاه
اساطیر زبان

در پایتون ، کلاس های date ، time و datetime تعدادی تابع برای استفاده از تاریخ ، زمان و فواصل زمانی ارائه می دهند. date و datetime شیء هستند ، بنابراین وقتی از آن ها استفاده می کنید، در واقع از اشیاء استفاده می کنید و به صورت رشته یا timestamp نیستند. هر وقت که تاریخ یا زمان را بخواهید استفاده کنید ، باید تابع datetime را import کنید.

کلاس های datetime در پایتون به ۵ کلاس اصلی طبقه بندی می شوند.

 


برنامه نویسی شبکه معماری کامپیوتر هوش مصنوعی و تجاری

توی این پک فوق العاده، صفرتاصد مبانی برنامه نویسی رو جوری یاد میگیری که تو هیچ کلاس آموزشی یا پک دیگه ای نه دیدی نه شنیدی! بدون هیچ کلاسی، با صفرتاصد مبانی برنامه نویسی اپلیکیشن بزن، پروژه محور یاد بگیر و حسابی پول در بیار! 


 

 


پایتون

توی این پک فوق العاده، پایتون رو جوری یاد میگیری که تو هیچ کلاس آموزشی یا پک دیگه ای نه دیدی نه شنیدی! بدون هیچ کلاسی، با پایتون اپلیکیشن بزن، پروژه محور یاد بگیر و حسابی پول در بیار! 


 

  • date – شکل درست تاریخ (ماه ، روز ، سال)
  • time – زمان مستقل از روز (ساعت ، دقیقه ، ثانیه ، میکرو ثانیه)
  • datetime – ترکیبی از زمان و تاریخ (ماه ، روز ، سال ، ساعت ، ثانیه ، میکرو ثانیه)
  • timedelta— تخمین زمان آینده و گذشته.
  • tzinfo— کلاس انتزاعی برای برخورد با مناطق زمانی

در این آموزش می آموزیم:

  • نحوه استفاده از کلاس Date و DateTime
  • چاپ تاریخ با استفاده از ()date.today
  • تاریخ و زمان فعلی پایتون: ()now() today
  • نحوه تولید خروجی تاریخ و زمان با ()Strftime
  • نحوه استفاده از اشیاء Timedelta

نحوه استفاده از کلاس Date و DateTime

مرحله ۱) قبل از اجرای کد برای datetime ، باید ماژول های زمان و تاریخ را همانطور که در تصویر زیر نشان داده شده است import کنید.

C:\Users\Mr\Desktop\New folder (2)\Python15.1 (2).png

مواردی که import می شوند قطعاتی از پیش تعریف شده از تایع در کتابخانه پایتون هستند که به شما امکان می دهد تا از تاریخ و زمان استفاده کنید ، بدون اینکه کد بنویسید.

قبل از اجرای کد datetime نکات زیر را در نظر بگیرید

from datetime import date

این خط به مترجم پایتون می گوید که از ماژول datetime کلاس date را import می کنیم.

مرحله ۲) بعد ، نمونه ای از شیء date ایجاد می کنیم.

C:\Users\Mr\Desktop\New folder (2)\Python15.2.png

مرحله ۳) تاریخ را چاپ می کنیم و کد را اجرا می کنیم.

C:\Users\Mr\Desktop\Python15.3.png

خروجی همانطور است که انتظار می رود.

چاپ تاریخ با استفاده از()date.today

تابع date.today دارای چندین ویژگی است که با آن ارتباط دارند. ما می توانیم روز / ماه / سال و موارد دیگر را چاپ کنیم.

به مثال زیر توجه کنید:

C:\Users\Mr\Desktop\New folder (2)\Python15.4.png

شماره روز های هفته

تابع ()date.today شماره روز هفته را نیز به شما می دهد. جدول روزهای هفته در زیر آورده شده است.

C:\Users\Mr\Desktop\day.jpg

تعداد روزهای هفته برای آرایه هایی که شاخص آن ها به روز هفته بستگی دارد مفید است.

C:\Users\Mr\Desktop\New folder (2)\Python15.5.png

تاریخ و زمان فعلی پایتون: هم اکنون()now() today

مرحله ۱) مانند اشیاء date ، همچنین می توانیم از “DATETIME OBJECTS” در پایتون استفاده کنیم که تاریخ را به همراه زمان در ساعت ، دقیقه ، ثانیه و میلی ثانیه نشان می دهد.

C:\Users\Mr\Desktop\New folder (2)\Python15.6.png

هنگامی که ما کد را برای datetime اجرا می کنیم ، خروجی را با تاریخ و ساعت فعلی نشان می دهد.

مرحله ۲) با “DATETIME OBJECT” ، همچنین می توانید کلاس time را فرا بخوانید.

فرض کنید می خواهیم فقط زمان فعلی را بدون تاریخ چاپ کنیم.

t = datetime.time(datetime.now())

کلاس time را import کرده بودیم. مقدار فعلی زمان را با استفاده از ()datetime.now بدست می آوریم.

  • مقدار فعلی زمان را به متغیر t اختصاص می دهیم.
  • و این فقط زمان فعلی را به ما می دهد. بیایید برنامه را اجرا کنیم.

C:\Users\Mr\Desktop\New folder (2)\Python15.7.png

خوب ، بنابراین می توانید ببینید که در اینجا از datetime استفاده کردیم و در ادامه، فقط زمان را به t اختصاص دادیم.

مرحله ۳) ما از فهرست نمایه روزهای هفته خود در لیست روزهای هفته ما استفاده خواهیم کرد تا بدانیم امروز کدام روز است

بسته به روز هفته ، به (wd) عدد (۰تا۶) اختصاص می یابد. در اینجا آرایه ای از روزهای هفته تعریف کردیم (دوشنبه ، سه شنبه ، چهارشنبه … یکشنبه).

از مقدار شاخص برای فهمیدن روز استفاده کردیم که شماره ۲ که چهارشنبه است را نشان می دهد ، بنابراین در خروجی چاپ خواهد شد ” Which is a Wednesday.”.

C:\Users\Mr\Desktop\New folder (2)\Python15.8 (2).png

در اینجا کد کامل برای بدست آوردن تاریخ و زمان فعلی با استفاده از datetime آورده شده است.

from datetime import date

from datetime import time

from datetime import datetime

def main():

##DATETIME OBJECTS

#Get today’s date from datetime class

today=datetime.now()

#print (today)

# Get the current time

#t = datetime.time(datetime.now())

#print “The current time is”, t

#weekday returns 0 (monday) through 6 (sunday)

wd=date.weekday(today)

#Days start at 0 for monday

days= [“monday”,”tuesday”,”wednesday”,”thursday”,”friday”,”saturday”,”sunday”]

print(“Today is day number %d” % wd)

print(“which is a ” + days[wd])

if __name__== “__main__”:

main()

نحوه تولید خروجی تاریخ و زمان با ()Strftime

آموختیم که چگونه می توان از datetime و شی date در پایتون استفاده کرد. در قدم بعدی یاد می گیریم که چگونه از تابع قالب بندی برای قالب دادن به زمان و تاریخ استفاده کنیم.

مرحله ۱) ابتدا یک مرحله ساده برای چگونگی قالب بندی سال را خواهیم دید. بهتر است با مثال آن را درک کنید.

C:\Users\Mr\Desktop\New folder (2)\Python15.9.png

  • برای قالب بندی از تابع “strftime” استفاده کردیم.
  • این تابع از کد کنترل متفاوتی برای ارائه خروجی استفاده می کند.
  • هر کد کنترل به پارامترهای مختلفی از قبیل سال ، ماه ، روز هفته و تاریخ شباهت دارد.

[(%y/%Y – Year), (%a/%A- weekday), (%b/%B- month), (%d – day of month)]

  • در اینجا (“Y٪”) است که به سال شباهت دارد ، سال کامل را با قرن چاپ می کند (به عنوان مثال ، ۲۰۱۸).

مرحله ۲) اکنون اگر (“Y٪”) را با حروف کوچک ، یعنی (y٪”) جایگزین کنید و کد را اجرا کنید ، خروجی فقط (۱۸) است و ۲۰۱۸ نمایش داده نمی شود.

C:\Users\Mr\Desktop\New folder (2)\Python15.10.png

مرحله ۳) تابع Strf می تواند تاریخ ، روز ، ماه و سال را به طور جداگانه تعریف کند. همچنین با تغییراتی کوچک در کد کنترل در تابع strftime می توانید سبک متن را قالب بندی کنید.

C:\Users\Mr\Desktop\New folder (2)\Python15.11.png

در داخل تابع Striftime اگر (a٪) را با حرف بزرگ A ، یعنی (A ٪) جایگزین کنید ، خروجی به جای چاپ مخفف “Fri”، “Firday” را چاپ می کند.

C:\Users\Mr\Desktop\New folder (2)\Python15.12.png

مرحله ۴) با کمک تابع “Strftime” می توانیم زمان و تاریخ سیستم محلی، یا هر دو را بازیابی کنیم.

۱- C٪- تاریخ و زمان محلی را نشان می دهد

۲- x٪ – تاریخ محلی را نشان می دهد

۳- X ٪ – زمان محلی را نشان می دهد

C:\Users\Mr\Desktop\New folder (2)\Python15.13 (2).png

در خروجی می توانید نتیجه را مطابق آنچه انتظار می رود مشاهده کنید.

مرحله ۵) ” strftime function” به شما امکان می دهد فرمت ۲۴ ساعته یا ۱۲ ساعته زمان را صدا بزنید.

C:\Users\Mr\Desktop\New folder (2)\Python15.14.png

فقط با تعریف کد کنترل مانند I / H ٪ برای ساعت ،٪ M برای دقیقه ،٪ S برای ثانیه ، می توان زمان را برای قالب های مختلف فراخوانی کرد.

قالب زمان ۱۲ ساعته تعریف شده است [(print now.strftime(“%I:%M:%S %P” ]

قالب زمان ۲۴ ساعته تعریف شده است [(print now.strftime(“%H:%M”]

در زیر کد کامل تبدیل datetime به شیء String آورده شده است.

#

#Example file for formatting time and date output

#

from datetime import datetime

def main():

#Times and dates can be formatted using a set of predefined string

#Control codes

now= datetime.now() #get the current date and time

#%c – local date and time, %x-local’s date, %X- local’s time

print(now.strftime(“%c”))

print(now.strftime(“%x”))

print(now.strftime(“%X”))

##### Time Formatting ####

#%I/%H – 12/24 Hour, %M – minute, %S – second, %p – local’s AM/PM

print(now.strftime(“%I:%M:%S %p”)) # 12-Hour:Minute:Second:AM

print(now.strftime(“%H:%M”)) # 24-Hour:Minute

if __name__== “__main__”:

main()

نحوه استفاده از Objects Timedelta

با اشیاء timedelta می توانید زمان آینده و گذشته را نیز تخمین بزنید. به عبارت دیگر ، یک timespan برای پیش بینی روز ، تاریخ یا زمان خاصی است.

به یاد داشته باشید این تابع برای چاپ زمان یا تاریخ نیست ، بلکه چیزی برای محاسبه ی آینده یا گذشته است. به مثال زیر توجه کنید.

مرحله ۱) برای اجرای Timedelta Objects ، ابتدا باید دستور import را نوشته و سپس کد را اجرا کنید.

C:\Users\Mr\Desktop\New folder (2)\Python15.15 (2).png

۱- عبارت import را برای timedelta بنویسید.

۲- اکنون کد را برای چاپ کردن شیء از timedelta ، همانطور که در عکس نشان داده شده است ، بنویسید.

۳- کد را اجرا کنید. timedelta مدت زمان ۳۶۵ روز ، ۸ ساعت و ۱۵ دقیقه را نشان می دهد و همان را چاپ می کند.

گیج کننده؟ مرحله بعدی کمک خواهد کرد-

مرحله ۲) تاریخ و زمان امروز را می گیریم تا بررسی کنیم آیا عبارت import ما به خوبی کار می کند یا خیر. هنگامی که کد اجرا شد ، تاریخ امروز را چاپ می کند ، به این معنی که عبارت import به خوبی کار می کند.

C:\Users\Mr\Desktop\Python15.16.png

مرحله ۳) خواهیم دید که چگونه می توانیم تاریخ یک سال را از طریق اشیاء timedelta بازیابی کنیم. وقتی کد را اجرا می کنیم ، همانطور که انتظار می رود ، خروجی را ارائه می دهد.

C:\Users\Mr\Desktop\New folder (2)\Python15.17.png

مرحله ۴) نمونه دیگری از چگونگی استفاده از timedelta برای محاسبه تاریخ آینده از تاریخ و زمان فعلی.

C:\Users\Mr\Desktop\New folder (2)\Python15.18.png

مرحله ۵) بیایید به یک مثال پیچیده تر بپردازیم. می خواهیم حساب کنیم چند روز از سال نو را سپری کرده ایم.

  • Using today()= date.today به تاریخ امروز خواهیم رسید.
  • می دانیم که سال نو همیشه در تاریخ ۱ ژانویه است ، اما سال می تواند متفاوت باشد. با استفاده از (nyd= date(today.year,1,1 سال جدید را در متغیر nyd ذخیره می کنیم.
  • if nyd < today: مقایسه می کند که آیا تاریخ فعلی بیشتر از سال جدید است. اگر بله ، وارد حلقه while می شود.
  • ((today-nyd).days) تفاوت بین تاریخ فعلی و سال جدید را در DAYS نشان می دهد.

C:\Users\Mr\Desktop\New folder (2)\Python15.19.png

خروجی برابر است با: “New Year Day already went by 11 days ago.”

کد کامل:

#

# Example file for working with timedelta objects

#

from datetime import date

from datetime import time

from datetime import datetime

from datetime import timedelta

# construct a basic timedelta and print it

print (timedelta(days=365, hours=8, minutes=15))

# print today’s date

print (“today is: ” + str(datetime.now()))

# print today’s date one year from now

print (“one year from now it will be:” + str(datetime.now() + timedelta(days=365)))

# create a timedelta that uses more than one argument

# print (in one week and 4 days it will be ” + str(datetime.now() + timedelta(weeks=1, days=4)))

# How many days until New Year’s Day?

today = date.today() # get todays date

nyd = date(today.year, 1, 1) # get New Year Day for the same year

# use date comparison to see if New Year Day has already gone for this year

# if it has, use the replace() function to get the date for next year

if nyd < today:

print (“New Year day is already went by %d days ago” % ((today – nyd).days))

مثال پایتون ۲

from datetime import date

from datetime import time

from datetime import datetime

def main():

##DATETIME OBJECTS

#Get today’s date from datetime class

today=datetime.now()

#print today

# Get the current time

#t = datetime.time(datetime.now())

#print “The current time is”, t

#weekday returns 0 (monday) through 6 (sunday)

wd = date.weekday(today)

#Days start at 0 for monday

days= [“monday”,”tuesday”,”wednesday”,”thursday”,”friday”,”saturday”,”sunday”]

print “Today is day number %d” % wd

print “which is a ” + days[wd]

if __name__== “__main__”:

main()

#

#Example file for formatting time and date output

#

from datetime import datetime

def main():

#Times and dates can be formatted using a set of predefined string

#Control codes

now= datetime.now() #get the current date and time

#%c – local date and time, %x-local’s date, %X- local’s time

print now.strftime(“%c”)

print now.strftime(“%x”)

print now.strftime(“%X”)

##### Time Formatting ####

#%I/%H – 12/24 Hour, %M – minute, %S – second, %p – local’s AM/PM

print now.strftime(“%I:%M:%S %p”) # 12-Hour:Minute:Second:AM

print now.strftime(“%H:%M”) # 24-Hour:Minute

if __name__== “__main__”:

main()

#

# Example file for working with timedelta objects

#

from datetime import date

from datetime import time

from datetime import datetime

from datetime import timedelta

# construct a basic timedelta and print it

print timedelta(days=365, hours=8, minutes=15)

# print today’s date

print “today is: ” + str(datetime.now())

# print today’s date one year from now

print “one year from now it will be:” + str(datetime.now() + timedelta(days=365))

# create a timedelta that uses more than one argument

# print “in one week and 4 days it will be ” + str(datetime.now() + timedelta(weeks=1, days=4))

# How many days until New Year’s Day?

today = date.today() # get todays date

nyd = date(today.year, 1, 1) # get New Year Day for the same year

# use date comparison to see if New Year Day has already gone for this year

# if it has, use the replace() function to get the date for next year

if nyd < today:

print “New Year day is already went by %d days ago” % ((today – nyd).days)

خلاصه

برای استفاده تاریخ و زمان به دو روش ساده و پیچیده ، ماژول datetime کلاس ها یا دسته بندی های مختلفی را ارائه می دهد.

  • date – شکل درست تاریخ (ماه ، روز ، سال)
  • time – زمان مستقل از روز (ساعت ، دقیقه ، ثانیه ، میکرو ثانیه)
  • datetime – ترکیبی از زمان و تاریخ (ماه ، روز ، سال ، ساعت ، ثانیه ، میکرو ثانیه)
  • timedelta— تخمین زمان آینده و گذشته.
  • tzinfo— یک کلاس انتزاعی برای برخورد با مناطق زمانی

استفاده از اشیاء datetime

  • Import کردن اشیاء datetime قبل از اجرای کد الزامی است.
  • استفاده از تابع date.today برای چاپ تاریخ به فرم روز / ماه / سال و همچنین نشان دادن روز
  • استفاده از شی date.time برای گرفتن زمان در قالب ساعت ، دقیقه ، ثانیه و میکرو ثانیه

قالب بندی Time-Out با “تابع strftime “

  • برای تغییر قالب سال از “تابع strftime ” استفاده کنید.
  • روز ، تاریخ ، ماه و سال را به طور جداگانه چاپ کنید.
  • برای قالب ۱۲ ساعته یا ۲۴ ساعته out time را فراخوانی کنید.

اشیاء Timedelta

  • با اشیاء timedelta می توانید زمان آینده و گذشته را تخمین بزنید.
  • کل روزهای باقی مانده به یک روز ویژه (مثلا تولد) را از زمان فعلی محاسبه کنید.
  • کل روزهای گذشته از روز ویژه (مثلا تولد) را از زمان فعلی محاسبه کنید.

تفاوت پک های حرفه ای ما با آموزشهای رایگان: بطور خلاصه از زمین تا آسمان! 1-پکها، جدیدترین نسخه نرم افزارها را آموزش می دهند با قابلیت های بسیار بیشتر. 2-پکها توسط متخصص آن نرم افزار، به صورت کاملا پروژه محور و با حل چالش هایی که در مسیر کار عملی و حرفه ای با آن روبرو می شوید تهیه شده اند و بعد از استفاده، کاملا برای بازار کار آماده اید! 3- متد این پکها کاملا کار شده و تا ماهها، در ذهن تان ماندگارند و یادگیری بسیار سریعتر و کاملتری خواهید داشت. آموزشهای رایگان فقط دستورات نرم افزارها را (آنهم ناقص) بیان می کنند و تازه برای ورود به بازار باید ماهها تجربه عملی هم کسب کنید !!

turned_in,

چرب زبان

با این اپلیکیشن ساده، هر زبانی رو فقط با 5 دقیقه در روز، توی 80 روز مثل بلبل حرف بزن! بهترین متد روز، تقویت حافظه، آموزش تصویری. یادگیری زبان کلید یادگیری هر مهارتی در قرن 21 !


حتما بخوانید!

1 دیدگاه. ارسال دیدگاه جدید

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

این فیلد را پر کنید
این فیلد را پر کنید
لطفاً یک نشانی ایمیل معتبر بنویسید.

فهرست