با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن . و کاربرانی که دوره کامل آموزش پایتون ، را دنبال می کنند. در قسمت قبلی به آموزش ماژول ها در پایتون پرداختیم ،در این جلسه قصد داریم به آموزش کار با تاریخ و زمان در پایتون Python و نمایش تاریخ و زمان در پایتون بپردازیم.
از ماژول datetime برای کار با تاریخ و زمان در پایتون استفاده می کنیم.
در کد زیر تاریخ و ساعت جاری را چاپ کرده ایم:
1 2 3 4 | import datetime x = datetime.datetime.now() print(x) |
نمایش تاریخ و زمان در پایتون در خروجی مثال بالا به صورت زیر خواهد بود:
۲۰۱۸-۰۸-۰۲ ۰۹:۵۱:۱۶٫۱۰۲۶۳۸
زمان بالا شامل سال، ماه، روز، ساعت، دقیقه، ثانیه و میلی ثانیه می باشد.
ماژول datetime توابع زیادی برای برگرداندن اطلاعات برای شی زمان دارد.
در ادامه با برخی از این توابع آشنا خواهید شد.
در مثال زیر سال و روز هفته را چاپ می کنیم:
1 2 3 4 5 6 | import datetime x = datetime.datetime.now() print(x.year) print(x.strftime("%A")) |
برای ساخت یک زمان، از کلاس (سازنده) ()datetime از ماژول datetime استفاده می کنیم.
این تابع سه پارامتر برای ایجاد شی زمان نیاز دارد: سال، ماه و روز.
1 2 3 4 5 | import datetime x = datetime.datetime(2020, 5, 17) print(x) |
خروجی به شکل زیر است:
C:\Users\My Name>python demo_datetime3.py ۲۰۲۰-۰۵-۱۷ ۰۰:۰۰:۰۰ |
همچنین این تابع می تواند پارامتر هایی را هم برای ساعت، دقیقه و … بگیرد که اختیاری هستند و به صورت پیش فرش دارای مقدار ۰ هستند.
شی datetime یک تابع فرمت یا قالب دهی اشیا زمان برای خوانا تر کردن زمان دارد.
این تابع، تابع srtftime نام دارد و یک پارامتر را برای قالب بندی رشته زمان می گیرد.
در مثال زیر نام ماه را چاپ کرده ایم:
1 2 3 4 5 | import datetime x = datetime.datetime(2018, 6, 1) print(x.strftime("%B")) |
در پایین تمام فرمت هایی را که تابع می تواند بگیرد را توضیح داده ایم.
مثال | توضیحات | فرمت |
Wed | روز هفته به صورت مختصر | a% |
Wednesday | روز هفته به صورت کامل | A% |
۳ | روز هفته در قالب عدد ۰-۶ که یک شنبه ۰ است | w% |
۳۱ | روز ماه ۰۱-۳۱ | d% |
Dec | نام ماه به صورت مختصر | b% |
December | نام ماه به صورت کامل | B% |
۱۲ | ماه در قالب عدد ۱-۱۲ | m% |
۱۸ | سال به صورت مختصر (بدون قرن) | y% |
۲۰۱۸ | سال به صورت کامل | Y% |
۱۷ | ساعت ۰۰-۲۳ | H% |
۰۵ | ساعت ۰۰-۱۲ | I% |
PM | AM/PM | p% |
۴۱ | دقیقه ۰۰-۵۹ | M% |
۰۸ | ثانیه ۰۰-۵۹ | S% |
۵۴۸۵۱۳ | میکرو ثانیه ۰۰۰۰۰۰-۹۹۹۹۹۹ | f% |
+۰۱۰۰ | UTC | z% |
CST | منطقه زمانی (Timezone) | Z% |
۳۶۵ | روز سال ۰۰۱-۳۶۶ | j% |
۵۲ | چندمین هفته از سال ۰۰-۵۳ | U% |
۵۲ | چندمین هفته از سال ۰۰-۵۳ | W% |
Mon Dec 31 17:41:00 2018 | نسخه محلی تاریخ و زمان | c% |
۱۲/۳۱/۱۸ | نسخه محلی تاریخ | x% |
۱۷:۴۱:۰۰ | نسخه محلی زمان | X% |
% | کاراکتر % | %% |
جلسه آموزش کار با تاریخ و زمان در پایتون python نیز به پایان رسید.
در جلسه بعد به آموزش JSON در پایتون python خواهیم پرداخت. با ما همراه باشید.
مسعود
سپاس
امیررضا
سلام
من اصلا تجربه ای در دنیای کامپیوتر و برنامه نویسی و کدینگ ندارم. اخیرا بواسطه کارام که با نرم افزار Arc GIS هست با پایتون و کاربردش در این نرم افزار و تسهیلاتی که ایجاد می کنه اشنا شدم. کلا صفر کیلومتر هستم.
در حال حاضر دارم روی یکسری داده ای کار می کنم که یکی از ستون هاش تاریخ میلادی هست و مثلا ۱۰۰۰ برداشت نمونه ای که در تاریخ ۱/۱/۲۰۱۸ اتفاق افتاده. اگر بخوام این تاریخ میلادی رو به روزهای هفته تبدیل کنم چطور ممکنه این کار رو انجام بدم؟
ممنون میشم راهنمایی م کنید
صادق
سلام. برای این کار می تونید از تابع ()strftime استفاده کنید. نمونه کد هم در بالا در همین آموزش آورده شده (مثال شماره ۳) که ابتدا تاریخ مورد نظر رو وارد می کنین سپس از تابع print برای چاپ روز هفته (که با استفاده از تابع strftime به دست اومده) استفاده می کنین. برای این مورد شما باید از پارامتر A% استفاده کنی تا روز هفته رو برگردونه.
شئهق
سلام چجوری میشه برنامه ای نوشت که به ثانیه از کارببر بگیره وتبدیلش بکنه به روز ساعت دقیقه و ثانیه؟
پی وی لرن
با سلام
این ممکن است کمکتان کند.
مشاهده لینک
علیرضا
برنامه بنویسید که تاریخ تولد شما به شمسی را دریافت کند مشخص کند چند سال، ماه و روز تا زمان حال از آن گذشته است؟
حسین
سلام
من میخاستم بدون استفاده از کتابخانه تاریخ و زمان رو بدست بیارم با دستور if میشه راهنمایی کنید؟