یک اسکریپت پایتون بنویسید که با استفاده از argparse یک ابزار خطفرمان برای شبیهسازی کنترل یک سنسور/اکچویتور در سیستمهای توکار بسازد؛ برنامه باید پارامترهای --device، --action (read|write)، --value (اختیاری برای write) و --interval (اختیاری برای خواندن دورهای) را بپذیرد و خروجی مناسب چاپ کند.
2.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 02:04 0.0
برای حل این مسئله از argparse.ArgumentParser استفاده کنید و برای هر گزینه add_argument تعریف کنید (مثلاً type=int برای مقدارها و choices=['read','write'] برای action). هنگام parse کردن، رفتار را بر اساس action تعیین کنید: در حالت read مقدار شبیهسازیشدهای (مثلاً با ماژول random) چاپ کنید و اگر interval مشخص شده، خواندن را به صورت دورهای با time.sleep تکرار کنید؛ در حالت write مقدار را اعتبارسنجی کرده و پیام تأیید چاپ کنید. نکات مفید: برای هر آرگومان help بنویسید، از default استفاده کنید، محدوده مقادیر را بررسی کنید و با استفاده از یک فلگ --verbose خروجیهای تشخیصی بیشتری بدهید و با KeyboardInterrupt حلقههای دورهای را بهخوبی خاتمه دهید.
1 پاسخ
جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من
در حال بارگیری...
برای ارسال پاسخ باید با حساب کاربری وارد شوید.
ورود به حساب کاربری
برای طراحی خوب یک ابزار خطفرمان، یک main() مستقل بنویسید و از if __name__ == '__main__' برای اجرای جداگانه استفاده کنید. با argparse پارامترها را به صورت --device (type=str)، --action (choices=['read','write']), --value (type=int)، و --interval (type=float, default=None) تعریف کنید و برای هر آرگومان توضیح help و مقدار پیشفرض مناسب بدهید. در حالت read مقدار شبیهسازیشده را تولید کنید و اگر --interval مشخص بود، با time.sleep بهطور دورهای اجرا را تکرار کنید و در صورت دریافت KeyboardInterrupt بهطور امن خاتمه دهید. در حالت write مقدار را اعتبارسنجی کنید و پیام تأیید چاپ کنید؛ در صورت فعال بودن --verbose خروجیهای تشخیصی بیشتری بدهید.
گزارش