جوانب مثبت و منفی زبان پایتونترکیب نحوی زبان پایتون کاملاً خوانا و تمیز است. به طور مثال، نوشتن یک برنامه استاندارد Hello world در نسخه 3.x این زبان به دور از هرگونه کد اضافی بهصورت (”!print(“Hello world نوشته میشود. زبان پایتون عناصر نحوی زیادی را ارائه میکند که در مدت زمان اجرای یک برنامه میتوان از آنها استفاده کرد. به طور مثال، برنامه ساده زیر را در نظر بگیرید که برای خواندن خطوط موجود در یک فایل متنی داخل یک شی List نوشته شده است.
with open(‘myfile.txt’) as my_file:
file_lines = [x.strip(‘\n’) for x in my_file]
ساختار with/as از جمله اشیای زبان پایتون به شمار میرود که به قابلیت Context manager تجهیز شده است.
این ساختار راهکار کارآمدی برای تعریف یک شی تخصیص داده شده به یک بلوک از کدها و سپس آزاد کردن شی از بلوکی که به آن تخصیص داده شده است را ارائه میکند. در این مثال، شی my_file از طریق تابع open معرفی شده است.
همان گونه که مشاهده میکنید، در زبان پایتون اغلب کارها با حداقل کدنویسی به سرانجام میرسند.
در مثال فوق، بهجای آنکه به چند خط کدنویسی برای باز کردن یک فایل، خواندن خطوط مختلف و درنهایت بستن فایل نیاز داشته باشید، تنها از طریق دو خط این کارها را انجام دهید.
این تکنیک در مقایسه با بهکارگیری بلوک Try-finally سادهتر بوده و از خوانایی بیشتری برخوردار است. ساختار [x … for x in my_file] یکی دیگر از تکنیکهای مختص زبان پایتون است. این ترکیب نحوی به یک عنصر تخصیص داده شده که شامل عناصر دیگری است اجازه میدهد (در این مثال my_file و خطوطی که همراه با آن هستند) که تکرار شده و به عناصر تکرارشونده نیز (در این مثال x) اجازه میدهد که پردازش شده و به طور خودکار به داخل فهرست اضافه شوند.
همانند هر زبان دیگری امکان انجام این کار از طریق یک حلقه for…. نیز امکانپذیر است، اما پایتون به شما اجازه میدهد کارها را با کمترین پیچیدگی و بالاترین خوانایی انجام دهید.
شبیه به زبانهای دیگری همچون جاوا، سی شارپ و گو، زبان پایتون برای مدیریت حافظه از تکنیک Garbage collections استفاده میکند. در نتیجه برنامهنویس در زمان نوشتن اشیا و آزادسازی اشیا دغدغهای نخواهد داشت.
بهطور معمول، فرآیند Garbage collection در پس زمینه و بهشکل خودکار انجام میشود. اما اگر مشکلی در این زمینه به وجود آید، برنامهنویس میتواند این فرآیند را بهطور دستی مدیریت کند.
یکی دیگر از ویژگیهای جالب پایتون پویایی این زبان است. هر چیزی در این زبان همچون توابع و خود ماژولها بهعنوان یک شی شناخته و مدیریت میشوند.
در حالی که این تکنیک تا حدودی سرعت را قربانی میکند، اما در مقابل اجازه میدهد کدهای سطح بالا را بهسادگی بنویسید. این تکنیک نهتنها به طراحان اجازه میدهد اشیای پیچیده را بهسادگی و از طریق تنها چند دستورالعمل مدیریت کنند، بلکه به آنها اجازه میدهد بخشهایی از برنامه را در صورت لزوم بهشکل انتزاعی تعریف کنند.
شاید یکی از بهترین یا بدترین ویژگیهای زبان پایتون در ارتباط با فضای سفید است. توررفتگیها و رفتن به خطوط دوم در زبان پایتون تنها برای خوانایی برنامه نیست.
فضای سفید یکی از اصلیترین بخشهای ترکیب نحوی پایتون به شمار میرود. مفسران زبان پایتون برنامههایی را که بهشکل درستی از دندانهگذاری بهمنظور نشان دادن جریان کنترل برنامه استفاده نکرده باشند رد میکنند.
🐍
@Python_0to100