ویرگول
ورودثبت نام
رضا ناظری
رضا ناظریnazeriland.ir
رضا ناظری
رضا ناظری
خواندن ۲ دقیقه·۳ سال پیش

اپراتور Walrus در پایتون

زبون پایتون بخاطر سینتکس(syntax) ساده و نزدیک به زبون انگلیسی که داره همه رو جذب خودش می‌کنه چون می‌تونیم با چند خط کد ساده کارای باحال و خفنی انجام بدیم و این خیلی حس خوبی میده ?

می‌خوام یکی از ویژگی های خیلی خوبی که تو پایتون 3.8 اضافه شده رو بهتون بگم تا با این اپراتور خیلی خوب و کاربردی آشنا بشین. اپراتور walrus (تلفظ: والرِس) که به صورت =: نوشته میشه، می‌تونه تعداد خط کدهای مارو کمتر کنه. این ویژگی خیلی خیلی خوبه و برنامه نویسای پایتون همیشه دوست دارن تو تعداد خط کد کمتر کارای بیشتری انجام بدن چون خیلی حال میده ?

بعلاوه باعث میشه سرعت کد نویسی و توسعه برناممون سریعتر بشه چون تو زمان کمتر و با کد کمتر، داریم کارهای بیشتری انجام میدیم و این یعنی راحتی، که چیزیه که دنبالش هستیم تا همیشه ساده‌تر کد بزنیم و بیشتر لذت ببریم و برنامه های باحال‌تر و با ارزش‌تری درست کنیم.

دلیل اینکه اسمشو گذاشتن walrus شباهت ظاهری این اپراتور به گراز دریایی ?

کار با این اپراتور خیلی خیلی سادست و به راحتی می‌تونین یاد بگیرینش. حالا می‌خوایم با چندتا مثال ساده کامل درکش کنیم و از این به بعد تو برنامه هامون ازش استفاده کنیم.

مثلا این کد رو درنظر بگیرین:

تو کد بالا ما تو مرحله اول، طول اسم رو بدست آوردیم و داخل n ذخیره کردیم چون بعدش می‌خوایم هم تو if هم تو print ازش استفاده کنیم و نیاز نداشته باشیم 2 بار طول اسم رو محاسبه کنیم. بعد تو مرحله دوم داخل if چک کردیم بیشتر از 10 هست یا نه.

حالا اگه از اپراتور walrus استفاده کنیم کدمون اینطوری میشه:

اینجا اون دو مرحله قبل رو توی یک خط انجام میدیم. اومدیم تو شرط if هم طول اسم رو حساب کردیم هم داخل متغیر n ذخیرش کردیم هم چک کردیم بیشتر از 10 هست یا نه؟ یعنی 3 کار مختلف رو توی یک خط انجام دادیم ?

حالا یه مثال دیگه:

اینجاهم 3 مرحله داریم. مرحله اول شروع می‌کنیم یک خط از فایل رو می‌خونیم و تو متغیر line ذخیره می‌کنیم. مرحله دوم چک می‌کنیم اطلاعاتی وجود داره یا به آخر فایل رسیدیم؟ اگر هنوز فایلمون اطلاعاتی داشت، اطلاعات رو می‌خونیم و پروسس می‌کنیم. مرحله سوم خط بعدی فایل رو می‌خونیم و مرحله دوم تکرار میشه…

حالا اومدیم از اپراتور walrus استفاده کردیم و همه اون کارهارو توی یک خط انجام دادیم ? یعنی هم خط اول فایل رو خوندیم، هم داخل متغیر line ذخیره کردیم، هم چک کردیم اطلاعاتی وجود داره؟ و هم خط بعدی رو خوندیم و این روند رو تا وقتی به انتهای فایل برسیم ادامه دادیم

پس walrus به این صورت می‌تونه کار رو خیلی خیلی برامون راحت تر کنه و تو تعداد خط کد کمتر، کار مدنظر مارو انجام بده و ماهم با راحتی و لذت بیشتر کد بزنیم.

پایتون
۲
۰
رضا ناظری
رضا ناظری
nazeriland.ir
شاید از این پست‌ها خوشتان بیاید