ویژگی ها و تکنیک های پایتون – بخش اول

tips and techniques

- تبلیغات -

ویژگی ها و تکنیک های پایتون – بخش اول

پایتون در حال حاضر جز محبوب ترین زبان های برنامه نویسی میباشد. متاسفانه بخاطر سادگی این زبان خیلی از افراد نکات مهمی از جمله یادگیری توابع و آبجکت های داخلی, کتابخانه های داخلی, و حتی سینتکس کامل آن قافل میشوند. در این پست قصد داریم ویژگی ها و تکینک های پایتون را به شما معرفی کنیم و بیشتر به سینتکس پایه و builtin ها می پردازیم.

لیست ویژگی ها و تکنیک ها در این بخش

  • توابع داخلی gettattr و setattr
  • ویژگی list unpacking و کاربردهای آن
  • ویژگی dictionary unpacking و کاربردهای آن

توابع داخلی getattr و setattr

تابع getattr با فرمت getattr(object, name[, default]) برای گرفتن attribute به نام name از object می باشد.

آرگومان object میتواند از هر نوع داده ای باشد چرا که در پایتون تقریبا همه چیز شئ هستند. name باید از نوع string باشد و default میتواند هر نوعی باشد و همینطور اختیاری است و اگر مقداری به آن داده نشود و attribute ای به نام مشخص شده در name در آن object وجود نداشته باشد خطای AttributeError رخ میدهد. برای چک کردن وجود attribute ای به نام name در object میتوانید از تابع hasattr استفاده کنید.

تابع setattr نیز مانند getattr میباشد اما برای تنظیم attribute با نام name بر روی object با مقدار value میباشد و فرمت آن setattr(object, name, value) است.

مثال:

خروجی مثال:

عمده استفاده ای که شخصا از این توابع داشته ام در مواقع نیاز به metaprogramming بوده است.

ویژگی list unpacking و کاربردهای آن

این ویژگی از ویژگی های بارز پایتون بشمار می آید. با استفاده از این قابلیت که برای آرگومان توابع میباشد میتوانید تعداد نامشخصی آرگومان به یک تابع بدهید.

ارسال و دریافت تعداد نامشخصی از آرگومان:

اجبار کردن به استفاده از مدل keyword argument برای آرگومان های اختیاری:

ویژگی dictionary unpacking و کاربردهای آن

این ویژگی نیز درست مانند list unpacking میباشد. با این تفاوت که بر روی دیکشنری ها و آرگومان های کلیدی یا همان keyword arguments کار میکند.

مثال:

در پست بعدی؟

در پست بعدی به string format و قابلیت های جدید معرفی شده در پایتون ۳.۸ خواهیم پرداخت.

موفق و پیروز باشید.

100%
Awesome
  • Criteria

- تبلیغات -

ارسال یک پاسخ

آدرس ایمیل شما منتشر نخواهد شد.