یک اسکریپت پایتون بنویسید که با استفاده از 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 حلقه‌های دوره‌ای را به‌خوبی خاتمه دهید.

توسط پژوهشگر در 220 روز قبل ساعت 02:04
دسته بندی ها: Python Python for beginner
reyhaneh در 220 روز قبل ساعت 11:03

برای طراحی خوب یک ابزار خط‌فرمان، یک 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 خروجی‌های تشخیصی بیشتری بدهید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری