توليد سجلات زمنية بفواصل زمنية قصيرة باستخدام Python
في هذا السياق، يمكننا استخدام لغة البرمجة Python لتحقيق هذا الهدف. أولاً وقبل كل شيء، يتعين علينا استيراد المكتبة المسؤولة عن إدارة التواريخ والوقت والتي تُدعى “datetime”، بالإضافة إلى مكتبة الأرقام العشوائية “random”. سنقوم بتحديد التاريخ الذي يختاره المستخدم، ومن ثم نقوم بتكوين توقيت بدء ونهاية بفاصل زمني قدره 5 ثوانٍ.
بعد ذلك، يمكننا بدء تكوين السجلات باستخدام حلقة تكرار تعمل حتى يتم الوصول إلى نهاية الفاصل الزمني. في كل تكرار، سنقوم بإنشاء سجل يحتوي على التاريخ والوقت باستخدام مكتبة “datetime”، ونقوم بتوليد رقم عشوائي باستخدام “random”. ثم يتم حفظ هذا السجل في ملف نصي.
-
تحسين تنسيق صفحة الويب29/03/2024
-
مشكلة رفع ملفات SWF في AVS20/03/2024
-
تعديل استعلام SQL لاستبعاد موظف معين03/04/2024
الآن، دعونا نبدأ بالكتابة:
pythonimport datetime
import random
def generate_records(start_date, start_time, end_time, interval, output_file):
current_datetime = datetime.datetime.strptime(f"{start_date} {start_time}", "%d/%m/%Y %H:%M:%S")
end_datetime = datetime.datetime.strptime(f"{start_date} {end_time}", "%d/%m/%Y %H:%M:%S")
with open(output_file, 'w') as file:
file.write("date\ttime\trandom number\n")
while current_datetime < end_datetime:
random_number = random.randint(0, 100)
record = f"{current_datetime.strftime('%d/%m/%Y')}\t{current_datetime.strftime('%H:%M:%S')}\t{random_number}\n"
file.write(record)
current_datetime += datetime.timedelta(seconds=interval)
if __name__ == "__main__":
start_date = input("Enter the start date (dd/mm/yyyy): ")
start_time = input("Enter the start time (hh:mm:ss): ")
end_time = input("Enter the end time (hh:mm:ss): ")
interval = 5 # تحديد الفاصل الزمني بالثواني
output_file = "generated_records.txt"
generate_records(start_date, start_time, end_time, interval, output_file)
print(f"Records generated and saved in {output_file}.")
في هذا البرنامج، يُطلب من المستخدم إدخال تاريخ بداية الفترة والوقتين المرغوبين. بعد ذلك، يتم استخدام وظيفة generate_records
لتوليد السجلات وحفظها في ملف نصي. يمكن تعديل اسم الملف النهائي حسب الحاجة.
المزيد من المعلومات
بالطبع، دعني أضيف المزيد من المعلومات حول البرنامج. في هذا البرنامج، تم استخدام مكتبتين رئيسيتين من لغة البرمجة Python:
-
datetime: هي مكتبة تتيح للمطورين التعامل مع التواريخ والأوقات بشكل فعّال. في البرنامج، استخدمنا
datetime.datetime.strptime
لتحويل السلسلة النصية إلى كائن تاريخ ووقت، وذلك باستخدام تنسيق الوقت المحدد. -
random: هي مكتبة تسمح بتوليد أرقام عشوائية. في البرنامج، استخدمنا
random.randint
لتوليد رقم عشوائي بين 0 و100 ليتم إدراجه في السجل.
البرنامج يتيح للمستخدم إدخال تاريخ بداية الفترة ووقت البداية والنهاية المطلوبين. ثم يتم تحديد الفاصل الزمني بين كل سجل باستخدام المتغير interval
، الذي تم تحديده بشكل ثابت في هذا المثال إلى 5 ثوانٍ.
يتم حفظ السجلات في ملف نصي يسمى “generated_records.txt” باستخدام وظيفة open
وwrite
في وضع الكتابة ('w'
). يتم تكوين كل سجل كنص يحتوي على تاريخ، ووقت، ورقم عشوائي، ويتم فصل هذه القيم باستخدام علامة الفاصلة.
أخيرًا، يتم عرض رسالة تؤكد أن السجلات تم توليدها بنجاح وتم حفظها في الملف المحدد.