اذهب إلى المحتوى

السؤال

نشر

لدي دالة ترجع لي المعلومات بالثواني لكنني أريد تخزين تلك المعلومات بشكل ساعات:دقائق:ثواني فهل هنالك طريقة سهلة لتحويل الثواني إلى هذا الشكل في بايثون؟

Recommended Posts

  • 0
نشر

هنالك طرق عديدة لتحويل الثواني إلى ساعات ودقائق وثواني في لغة بايثون، أسهلها استخدام دالة divmod() والتي تقوم بعملية قسمة تقليديّة ومن ثم ترجع ناتج القسمة والباقي.
يمكنك الحصول على النتيجة التي تريدها بسرعة عن طريق عمليتين حسابيتين باستخدام دالة divmod() والتقسيم على 60 كما في المثال التالي:

m, s = divmod(seconds, 60)
h, m = divmod(m, 60)
print "%d:%02d:%02d" % (h, m, s)

وهنالك حل آخر أيضا باستخدام دالة timedelta من وحدة datetime التي ستُرجع عدد الساعات والدقائق والثواني لكن يجب تحويلهم إلى سلسلة نصية باستخدام str() قبل استخدامهم كما في المثال التالي:

>>> import datetime
>>> str(datetime.timedelta(seconds=666))
'0:11:06'
  • 0
نشر

تحتوي وحدة time في بايثون على الدالة time.strftime لعرض الطابع الزمني (أو الختم الزمني timestamp؛ سلسلة من الارقام والاحرف، تدل على التاريخ و/أو الوقت) كسلسلة بتنسيق محدد عن طريق تمرير أكواد التنسيق.

تُستخدم الدالة time.gmtime لتحويل القيمة التي تم تمريرها إلى الدالة إلى ثوانٍ. أيضًا تحوّل الدالة time.strftime القيمة التي تم تمريرها من دالة time.gmtime إلى ساعات ودقائق باستخدام رموز التنسيق المحددة.

import time
sec = 123455
ty_res = time.gmtime(sec)
res = time.strftime("%H:%M:%S",ty_res)
print(res)

الخرج:

10:17:35

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...