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

السؤال

نشر

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

timestamp = [
    "2010-04-20 10:07:30",
    "2010-04-20 10:07:38",
    "2010-04-20 10:07:52",
    "2010-04-20 10:08:22",
    "2010-04-20 10:08:22",
    "2010-04-20 10:09:46",
    "2010-04-20 10:10:37",
    "2010-04-20 10:10:58",
    "2010-04-20 10:11:50",
    "2010-04-20 10:12:13",
    "2010-04-20 10:12:13",
    "2010-04-20 10:25:38"
]

 

Recommended Posts

  • 0
نشر

هنالك عدّة طرق في بايثون لترتيب سلسلة ذات نمط معين من الأرقام (كالتواريخ والأوقات) بترتيب مُحدّد سواء أكان تصاعدي أو تنازلي، فمثلا يمكنك استخدام دالة sort وستمرر لها مفتاح الدالة lambda الذي يحتوي على التشكيل الصحيح للتاريخ كما في المثال التالي:

timestamp.sort(key=lambda x: time.strptime(x, '%Y-%m-%d %H:%M:%S')[0:6],
    reverse=True)

أو بما أن القائمة مرتبة بترتيب تصاعدي بالفعل فيمكنك ببساطة عكس ترتيب القائمة لتحصل على الترتيب التنازلي وذلك عن طريق دالة reverse() كما في المثال التالي:

>>> timestamp.reverse()
>>> timestamp
['2010-04-20 10:25:38',
'2010-04-20 10:12:13',
'2010-04-20 10:12:13',
'2010-04-20 10:11:50',
'2010-04-20 10:10:58',
'2010-04-20 10:10:37',
'2010-04-20 10:09:46',
'2010-04-20 10:08:22',
'2010-04-20 10:08:22',
'2010-04-20 10:07:52',
'2010-04-20 10:07:38',
'2010-04-20 10:07:30']

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

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

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

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   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.

  • إعلانات

  • تابعنا على



×
×
  • أضف...