خطا در اجرا

پرسیده شده
فعالیت 1008 روز پیش
دیده شده 424 بار
0

 با سلام

در مورد این خطا راهنمایی بفرمایید

فایل پیوست
ف.rar
17.21 KB

taheri
taheri

4 مرداد 00

0
حذف شده

سلااااااااااااااااااااااااام

چشم

خطایی که بهتون داده اینه:

AttributeError: 'datetime.timedelta' object has no attribute 'second'

و گفته که این خطا در خط ۲۱ فایل test.py در wrapped رخ داده که خط زیر هست:

sec = duration.second

ترجمه خطایی که بهتون داده اینه:

خطای اتربیوت: ابجکت datetime.timedelta (که منظورش duration هست) اتربیوتی به اسم second نداره.

سعی کن با همین توضیحاتی که گفتم بفهمی مساله و خطایی که بهش خوردی از کجاست و حلش کنی.

جواب و راه حل کامل رو برات پایین تر گذاشتم اگر لازم داشتی.

 

 

 

وقتی ۲ تا ابجکت زمان datetime رو با هم جمع میکنی یا از هم کم میکنی نتیجه اش میشه ابجکتی از کلاس timedelta که attribute ها و method هاش متفاوت هستن و کلا یه کلاس دیگه است.

تو خط زیر زمان شروع رو از زمان پایان کم کردی و نتیجه اش رو ریختی که تو متغیر duration:

duration = end_time - start_time

که نتیجه این منها کردن ابجکتی از کلاس timedelta میشه.

کافیه تو خط بعدی بجای استفاده از اتربیوت second که مربوط به ابجکت های datetime هست از متد total_seconds استفاده کنی. در واقع خط ۲۱ فایل test.py رو باید به خط زیر تغییر بدی:

sec = duration.total_seconds()

تمام. باگ حل شد :)

 

بازم اگر سوالی داشتی در خدمتم.

فایل پیوست

محمدعلی رضا

توسط

محمدعلی رضا

5 مرداد 00

0
حذف شده

سلام

خیلی خیلی ممنونم

بسیار جامع پاسخ سوال بنده را دادید

 

 

 

فایل پیوست

taheri

توسط

taheri

6 مرداد 00