• 0

كيف أولد تاريخ عشوائي بين تاريخين في بايثون؟

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

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يوجد العديد من الطرق لفعل ذلك، فيمكنك على سبيل المثال تحويل كلا التاريخين إلى timestamps ومن ثم قم بطرح التاريخ الحديث من التاريخ الأقدم ثم اضرب الناتج برقم عشوائي بين 0 و1 وبعد ذلك أضف العدد المتحصل عليه إلى التاريخ القديم وأرجع وقت timestamps إلى تاريخ وستحصل على ما تريده كما في المثال التالي:

import random
import time

def strTimeProp(start, end, format, prop):
stime = time.mktime(time.strptime(start, format))
etime = time.mktime(time.strptime(end, format))

ptime = stime + prop * (etime - stime)

return time.strftime(format, time.localtime(ptime))


def randomDate(start, end, prop):
return strTimeProp(start, end, '%m/%d/%Y %I:%M %p', prop)

print randomDate("31/01/2015 1:30 PM", "31/03/2016 4:50 AM", random.random())

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن