زبان برنامهنویسی پایتون (Python Programming Language)، پرکاربردترین زبان برنامهنویسی حال حاضر است. بهطوری که برنامهنویسان و محققان حوزه هوش مصنوعی (Artificial Intelligence) و یادگیری ماشین (Machine Learning) به اشکال مختلفی از آن استفاده میکنند. مهم ترین ترفند ها را در بوت کمپ برنامه نویسی پایتون یاد بگیرید
با اینحال، قاعده مهمی که در ارتباط با زبانهای برنامهنویسی وجود دارد، آشنایی با ترفندها و تکنیکهایی است که اجازه میدهند به شکل هوشمندانهتری از یک زبان برنامهنویسی استفاده کنید. در این مطلب قصد داریم شما را با ترفندهای کاربردی جالب پایتون آشنا کنیم که باعث میشوند زمان کمتری را صرف کدنویسی کنید. با شرکت در بوت کمپ برنامه نویسی در زبان پایتون و دیگر زبان ها متخصص شوید
پایتون، زبانی با ترکیب نحوی ساده
ترکیب نحوی یا به عبارت دقیقتر قواعد دستوری (Syntax) زبان برنامهنویسی پایتون ساده هستند که همین موضوع یادگیری این زبان برای کاربران و برنامهنویسان مبتدی را ساده کرده است. زبان برنامهنویسی پایتون، مجموعهای غنی از ماژولها و کتابخانههای کاربردی در اختیار برنامهنویسان قرار میدهد تا مجبور نباشد برای انجام برخی کارها از صرف کدنویسی کنند. بیشتر مهندسان هوش مصنوعی و افرادی که حوزه کاری آنها مرتبط با دادهها و اطلاعات است از زبان برنامهنویسی پایتون برای انجام فعالیتهای کاری روزانه خود استفاده میکنند. به همین دلیل بخش عمدهای از تکنیکهای این مقاله نه تنها برای توسعهدهندگان عادی بلکه برای برنامهنویسان هوش مصنوعی نیز قابل استفاده است.
ترفندهای جذاب و کمتر دیده شده زبان برنامهنویسی پایتون
بیشتر ترفندهای برنامه نویسی در پایتون و پیادهسازی آنها، در راهنمای کتابخانه استاندارد پایتون (Python Standard Library) قرار دارند. علاوه بر این، برخی از کتابخانههای معرف پایتون مثل PyPi، مجموعه غنی از اطلاعات مرتبط با کاربردهای توابع تعریف شده را در اختیار کاربران و برنامهنویسان قرار میدهند. علاوه بر این، وبسایتها و منابع زیادی وجود دارند که اطلاعات جالبی در رابطه با ماژولها و ابزارهای معروف زبان برنامهنویسی پایتون در اختیار توسعهدهندگان قرار میدهند که با یک جستوجوی ساده در دسترس قرار دارند. در بخش اول ترفندهای کاربردی پایتون با برخی از این تکنیکها آشنا میشویم.
پیشنهاد مقاله: آموزش انواع داده Data Types در پایتون به همراه مثال
از پایتون 3 استفاده کنید
پایتون 3 در واقع نسل بعدی زبان برنامهنویسی پایتون به شمار میآید که در دسامبر سال 2008 میلادی همراه با چندین پیشرفت بزرگ و اضافه شدن ویژگیهای جدید، منتشر شد. یکی از ویژگیهای مهم این نسخه از زبان پایتون این است که طیف وسیعی از مشکلات امنیتی در آن بهبود پیدا کرده و مشکلاتی که در طراحی وجود داشت نیز برطرف شده است. این نسخه از پایتون، یک دستور جدید را برای جلوگیری از ایجاد کدهای اضافی وارد کرده است که باعث میشود تا بتوانید کدهای خود را به شکلی واضح درون زبان برنامهنویسی پایتون بنویسید. از طرف دیگر، نباید فراموش کرد که نحوه استفاده و همینطور خوانایی کدها در پایتون 3 نیز بهبود پیدا کرده است.
از IPython استفاده کنید
IPython یک ترمینال برای پایتون است که توسط فرناندو پرز در سال 2001 میلادی ایجاد شده است. این ابزار در واقع یک محیط حلقه را برای خواندن و ارزیابی REPL ارائه میدهد که برای انجام انواع محاسبات علمی بهترین گزینه خواهد بود. به عبارت دیگر میتوان گفت که IPython یک رابط قدرتمند برای زبان برنامهنویسی پایتون است. شاید برای شما جالب باشد که بدانید استفاده از IPython رایجترین راه برای استفاده از پایتون به منظور نوشتن اسکریپتها و فایلهایی با پسوند py خواهد بود.
با استفاده از IPython شما میتوانید دستوری را در یک لحظه نوشته و در همان لحظه نیز خروجی و نتایج آن را دریافت کنید. این فرایند کاملا متفاوت با فرایندی است که اکثر افراد برای کارکردن با زبان برنامهنویسی پایتون به کار میبرند. در واقع زمانی که قصد دارید تجزیهوتحلیل دادهها یا اجرای مدلهای محاسباتی را انجام دهید، نیازمند این نوع تعامل داشتن با زبان پایتون خواهید بود.
استفاده از کلاسهای داده
یکی از پرکاربردترین ترفند های پایتون استفاده از کلاسهای داده در این زبان است. در زبان برنامهنویسی پایتون، کلاس داده کلاسی است که فقط برای نگهداری از مقادیر دادهها ایجاد میشود. آنها با کلاسهای معمولی تفاوتی ندارند، ولی معمولا هیچ متدی در آنها پیادهسازی نمیشود. در واقع کلاسهای داده برای ذخیره اطلاعاتی که بین بخشهای مختلف یک برنامه یا سیستم ارسال میشوند، مورداستفاده قرار میگیرند.
ماژول کلاسهای داده که یک ویژگی جدید در پایتون 3.7 به شمار میآید، راهی ساده و آسان را در اختیار شما قرار میدهد تا بتوانید این کلاسهای داده را ایجاد کرده و از آنها استفاده کنید.
دستورات all و any
یکی از مهمترین دلایلی که باعث محبوبیت زبان برنامهنویسی پایتون شده است، خوانایی (Readability) و رسایی (Expressive) بالای آن است. یکی از ترفندهای برنامهنویسی در پایتون برای افزایش خوانایی کدها استفاده از دستورات all و any است.
x = [True, True, False]
if any(x):
print(“At least one True”)
if all(x):
print(“Not one False”)
if any(x) and not all(x):
print(“At least one True and one False”)
این مجموعه دستورات پایتون، برای بیان and و or متوالی در پایتون استفاده میشوند. دستور any، اگر یکی از آیتمها True باشد، مقدار True را به عنوان خروجی باز میگدارند. علاوه بر این، اگر فهرست خالی باشد یا همه آیتمها False باشند، مقدار False را در خروجی باز میگرداند. همین مسئله باعث شده تا برخی برنامهنویسان بگویند زبان برنامهنویسی پایتون، شبهکد اجرایی (Executable Pseudocode) است. گاهی اوقات این صحبت درست است و در مواقعی کدهای زبان برنامهنویسی پایتون، شبهکد اجرایی هستند.
تعویض درجای متغیر
یکی از جذابترین ترفندهایی که در زبان برنامهنویسی پایتون میتوانید از آن استفاده کنید، متد sympy.subs() است. با استفاده از این متد، میتوانید تمام نمونههای یک متغیر یا عبارت را در یک عبارت ریاضی که به همراه برخی از متغیرها و مقادیر دیگر است، جایگزین کنید. سینتکس استفاده از این متد به شکل زیر است:
math_expression.subs(variable, substitute)
دقت داشته باشید که ورودی variable در واقع متغیر یا عبارتی است که جایگزین میشود و از طرف دیگر، substitute متغیر یا عبارتی است که بهعنوان جایگزین مورداستفاده قرار میگیرد.
برای درک هرچه بهتر این تکنیک در زبان برنامهنویسی پایتون، مثال زیر را در نظر بگیرید:
# import sympy
from sympy import *
x, y = symbols(‘x y’)
exp = x**2 + 1
print(“Before Substitution : {}”.format(exp))
# Use sympy.subs() method
res_exp = exp.subs(x, y)
print(“After Substitution : {}”.format(res_exp))
حال اگر از این قطعه کد خروجی بگیریم، خروجی ما به شکل زیر خواهد بود:
Before Substitution : x**2 + 1
After Substitution : y**2 + 1
بسته نرمافزاری bashplotlib
یکی دیگر از ترفندهای برنامهنویسی در پایتون برای نمایش گرافی اطلاعات بسته نرمافزاری bashplotlib است. اگر نیاز به ساخت و نمایش گراف در کنسول یا همان پنجره سیاه رنگ خط فرمان دارید، میتوانید از طریق کد زیر، بسته bashplotlib را نصب و استفاده کنید. با استفاده از دستورات این بسته، قادر به تولید و نمایش گراف در کنسول برنامهنویسی پایتون خواهید بود.
$ pip install bashplotlib

مجموعه نوعهای دادهای (collections) در پایتون
زبان برنامهنویسی پایتون، نوعهای دادهای (Data Types) استاندارد و پیشفرض خوبی برای کاربران و برنامهنویسان آماده کرده است. با این حال، برخی از نوعهای دادهای تعریف شده، رفتارهای غیر منتظرهای نشان میدهند. استفاده از مجموعه نوعهای دادهای تعریف شده در ماژول collections، یکی از ترفندهای برنامهنویسی در پایتون است.
from collections import OrderedDict, Counter# Remembers the order the keys are added!
x = OrderedDict(a=1, b=2, c=3)# Counts the frequency of each character
y = Counter(“Hello World!”)
مجموعه نوعهای دادهای تعریف شده در ماژول collections، توسط کتابخانه استاندارد پایتون در دسترس برنامهنویسان قرار دارد. این افزونه بر پایه نوعهای دادهای استاندارد در زبان پایتون طراحی شده و نوعهای دادهای جدیدی در اختیار برنامهنویسان قرار میدهد. برخی از نوعهای دادهای این افزونه نوع دادهای (namedtuple)، نوع دادهای deque، نوع دادهای ChainMap، نوع دادهای Counter، نوع دادهای OrderedDict، نوع دادهای defaultdict، نوع دادهای UserDict، نوع دادهای UserList و نوع دادهای UserString هستند.
دستور dir
با استفاده از دستور dir، ویژگیهای مشخصه (Attributes) یک شیء (Object) تعریف شده در پایتون قابل نمایش است. برای این کار، کافی است از طریق واسط خط فرمان (Command Line Interface) پایتون، دستوراتی شبیه به دستورات زیر را اجرا کنید:
>>> dir()
>>> dir(“Hello World”)
>>> dir(dir)
این ترفند کاربردی، به ویژه مناسب برنامهنویسانی است که به شکل تعاملی در پایتون با اشیاء و ماژولهای مورد استفاده در برنامه کار میکنند. هنگامی که تابع dir بدون پارامتر فراخوانی شود، فهرستی از نامها یا شناسههای موجود در حوزه محلی (Local Scope) مورد استفاده در برنامه را نمایش میدهد. در صورتی که یک شیء به عنوان آرگومان، در هنگام فراخوانی تابع ارسال شود، فهرستی از ویژگیهای آن شی در خروجی را نمایش میدهد.
دستور from __future__ import
محبوبیت پایتون باعث شده تا شاهد توسعه و بهروزرسانی سریع ماژولها و بستههای نرمافزاری توسط تیمهای توسعه باشیم. در نسخههای جدید ماژولها و بستهها، معمولا و ویژگیهای جدیدی در اختیار برنامهنویسان قرار میدهند. ماژول __future__ به شما اجازه میدهد اگر در آینده، ویژگیهای جدیدی به بسته یا ماژول استفاده شده در برنامه اضافه شد، این ویژگیها به برنامه کاربردیتان اضافه شوند.
from __future__ import print_functionprint(“Hello World!”)
دستور geopy
از دیگر ترفندهای برنامهنویسی در پایتون برای یکپارچهسازی ویژگیهای مفید در برنامه، است. بهطور معمول یکپارچهسازی ویژگیهای جغرافیایی (Geographical) در برنامهها کار زمانگیر و پیچیدهای است. اما بسته geopy این فرایند را ساده میکند. برای این منظور ابتدا باید بسته فوق را با استفاده از فرمان زیر نصب کنید:
$ pip install geopy
در این بسته نرمافزاری، واسطهای برنامهنویسی کاربردی (API) بیشتر سرویسهای ارائه دهنده خدمات جغرافیایی به شکل واحد جمعآوری شدهاند. قابلیت فوق به برنامهنویسان اجازه میدهد آدرس کامل، طول و عرض جغرافیایی و حتی ارتفاع یک مکان خاص را به دست آورده و در برنامه از آن استفاده کنند.
from geopy import GoogleV3place = “221b Baker Street, London”
location = GoogleV3().geocode(place)print(location.address)
print(location.location)

دستور howdoi
هنگام برنامهنویسی خیلی زود متوجه میشوید که با تنگناهایی روبرو شدهاید یا راهحلهای فعلی جوابگوی نیاز شما نیستند. در اینگونه موارد برنامهنویسان به وبسایتهایی مثل StackOverflow مراجعه میکنند. یکی از ترفندهای برنامهنویسی در پایتون برای حل چنین مشکلاتی، ابزار بسیار مفید howdoi در رابط خط فرمان پایتون است.
$ pip install howdoi
کاربران میتوانند سؤالهای برنامهنویسی خود را از طریق کدهای زیر از این ابزار بپرسند. این ابزار سعی میکند تا جوابی در رابطه با پرسش مطرح شده نشان دهد.
$ howdoi vertical align css
$ howdoi for loop in java
$ howdoi undo commits in git
دستورات بسته inspect
یکی دیگر از ترفندهای برنامهنویسی در پایتون برای درک بهتر عملیاتِ پشت صحنه اجرای کدها، استفاده از بسته inspect است. این بسته، به برنامهنویس اجازه میدهد با عملیات پشت صحنه در هنگام اجرای کدهایش در پایتون آشنا شود. برای درک بهتر این موضوع به مثال زیر دقت کنید:
import inspectprint(inspect.getsource(inspect.getsource))
print(inspect.getmodule(inspect.getmodule))
print(inspect.currentframe().f_lineno)
کتابخانه Jedi
پایتون به دلیل کدنویسی مختصر و خوانایی بالا شهرت دارد، با اینحال، شما میتوانید سرعت کدنویسی خود در پایتون را افزایش دهید. از ابزارهای کاربردی در این زمینه کتابخانه Jedi است. این کتابخانه، امکاناتی مثل تکمیل خودکار (Autocompletion) و تحلیل کد را ارایه میکند. اگر به دنبای کدنویسی سریع در پایتون هستید پیشنهاد میکنیم از این کتابخانه غافل نشوید.
آرگومان **args
کلیدواژه **args آرگومانها را از ورودی دریافت میکند و در قالب نوع tuple در متغیری بهنام args که در تابع قابل استفاده است ذخیرهسازی میکند.
def func(*args):
print(args)
print(type(args))
func(“bmw”, “benz”, “mazda”)
خروجی کد فوق به شرح زیر است:
(‘bmw’, ‘benz’, ‘mazda’)
<class ‘tuple’>
با استفاده از این روش میتوان مشکل نامشخص بودن تعداد ورودیهای تابع را برطرف کرد.
آرگومان **kwargs
تفاوت kwargs** با args* در نوع دادهای مورد استفاده توسط آنها است. **kwargs دادهها را در قالب لغتنامه در متغیری بهنام kwargs قرار میدهد. برای آنکه بتوانید عملکرد آرگومان فوق را به خوبی درک کنید باید با نوع دادهای Dictionary در زبان برنامهنویسی پایتون آشنا شوید. در پایتون، Dictionary مجوعهای نامرتب از مقادیر دادهای است که برای ذخیره مقادیر دادهای استفاده میشود. برای روشن شدن موضوع به مثال زیر دقت کنید:
# Creating a Dictionary
# with Integer Keys
Dict = {1: ‘Geeks’, 2: ‘For’, 3: ‘Geeks’}
print(“\nDictionary with the use of Integer Keys: “)
print(Dict)
# Creating a Dictionary
# with Mixed keys
Dict = {‘Name’: ‘Geeks’, 1: [1, 2, 3, 4]}
print(“\nDictionary with the use of Mixed Keys: “)
print(Dict)
خروجی قطعه کد بالا به شرح زیر است:
Dictionary with the use of Integer Keys: {1: ‘Geeks’, 2: ‘For’, 3: ‘Geeks’} Dictionary with the use of Mixed Keys: {1: [1, 2, 3, 4], ‘Name’: ‘Geeks’}
در پایتون این امکان وجود دارد که از تابع dict() به همراه {} برای ساخت یک دیکشنری استفاده کرد. ترکیب نحوی این کار به شرح زیر است:
# Creating an empty Dictionary
Dict = {}
print(“Empty Dictionary: “)
print(Dict)
# Creating a Dictionary
# with dict() method
Dict = dict({1: ‘Geeks’, 2: ‘For’, 3:’Geeks’})
print(“\nDictionary with the use of dict(): “)
print(Dict)
# Creating a Dictionary
# with each item as a Pair
Dict = dict([(1, ‘Geeks’), (2, ‘For’)])
print(“\nDictionary with each item as a pair: “)
print(Dict)
خروجی دستور فوق به شرح زیر است:
Empty Dictionary: {} Dictionary with the use of dict(): {1: ‘Geeks’, 2: ‘For’, 3: ‘Geeks’} Dictionary with each item as a pair: {1: ‘Geeks’, 2: ‘For’}
استفاده از دو ستاره ** در کنار نام یک شیء تعریف شده از نوع دیکشنری به برنامهنویس اجازه میدهد در هنگام فراخوانی تابع، این شیء را به عنوان یک آرگومان نامدار (Named Arguments) به توابع ارسال کند. کلیدهای تعریف شده در شیء، نام آرگومانهای ارسال شده به تابع و مقادیر کلیدها، مقادیر آرگومانهای ارسال شده هستند.
dictionary = {“a”: 1, “b”: 2}def someFunction(a, b):
print(a + b)
return# these do the same thing:
someFunction(**dictionary)
someFunction(a=1, b=2)
این ترفند زمانی مفید است که برنامهنویس قصد دارد توابعی تعریف کند که از آرگومانهای نامدار (که هنوز تعریف نشدهاند) به عنوان آرگومانهای ورودی استفاده کنند.
دستورات List comprehensions
یکی از مفیدترین ترفندهای پایتون برای دستیابی به خوانایی بهتر کدها، عبارات List comprehensions هستند. این گروه از عبارات، برای مختصرسازی کدهای لازم برای تولید فهرستهای خوانا در زبان پایتون استفاده میشوند. عبارات List comprehensions، شامل تعدادی کروشه (Brackets) حاوی دستورات برنامهنویسی هستند. پس از آن، یک حلقه for و تعدادی عبارت if در این فهرست ظاهر میشوند. این گروه از عبارات، نوشتن کدهای خوانا در زبان برنامهنویسی پایتون را ممکن میکنند. قطعه کد زیر ترکیب نحوی فوق را نشان میدهد:
numbers = [1,2,3,4,5,6,7]
evens = [x for x in numbers if x % 2 is 0]
odds = [y for y in numbers if y not in evens]cities = [‘London’, ‘Dublin’, ‘Oslo’]def visit(city):
print(“Welcome to “+city)for city in cities:
visit(city)
دستور map
در پایتون، برنامهنویسی تابعی (Functional Programming) توسط برخی ویژگیهای تعبیهشده در این زبان برنامهنویسی دستیافتنی است. یکی از کاربردیترین ویژگیهای برنامهنویسی تابعی در زبان پایتون، تابع map است. قابلیت این تابع زمانی دو چندان میشود که همراه با تابع ()lambda استفاده شود. تابع lambda، یک تابع بینام (Anonymous Function) در پایتون است. این تابع میتواند آرگومانهایی به عنوان ورودی دریافت کند، اما به عنوان یک عبارت به آنها نگاه میکند. چگونگی استفاده از این ترکیب نحوی در دستور زیر نشان داده شده است:
x = [1, 2, 3]
y = map(lambda x : x + 1 , x)# prints out [2,3,4]
print(list(y))
در مثال بالا، تابع ()map یک تابع ساده lambda را روی هر کدام از عناصر موجود در متغیر x اعمال میکند. خروجی چنین عملیاتی یک شیء از نوع map است. شیء خروجی را میتوان به یک شیء قابل تکرار (Iterable Object) مثل لیست یا چندتایی (Tuple) پایتون تبدیل کرد.
ماژول newspaper3k
یکی از جذابترین ترفندهای برنامهنویسی پایتون است. ماژول newspaper3k، به برنامهنویسان اجازه میدهد مقالات خبری و فرا داده (metadata) همراه آنها را از سایتهای معروف خبری دنیا بازیابی و در برنامههای خود قرار دهند. علاوه بر این، ماژول مذکور میتواند تصاویر، متن و اسامی نویسندگان مقالات خبری را نیز بازیابی کند. ترکیب نحوی زیر چگونگی اینکار را نشان میدهد:
# Import required module
import newspaper
# Assingn url
url = ‘https://www.geeksforgeeks.org/top-5-open-source-online-machine-learning-environments/‘
# Extract web data
url_i = newspaper.Article(url=“%s” % (url), language=‘en’)
url_i.download()
url_i.parse()
# Display scrapped data
print(url_i.text)
مثال زیر نحوه دریافت دادهها از چند آدرس اینترنتی مختلف را نشان میدهد:
# Import required modules
import newspaper
# Define list of urls
list_of_urls = [‘https://www.geeksforgeeks.org/how-to-get-the-magnitude-of-a-vector-in-numpy/‘,
‘https://www.geeksforgeeks.org/3d-wireframe-plotting-in-python-using-matplotlib/‘,
‘https://www.geeksforgeeks.org/difference-between-small-data-and-big-data/‘]
# Parse through each url and display its content
for url in list_of_urls:
url_i = newspaper.Article(url=“%s” % (url), language=‘en’)
url_i.download()
url_i.parse()
print(url_i.text)
ادغام دیکشنریها (پایتون 3.5 به بالا)
در پایتون نسخه 3.5 به بالا، این امکان برای شما وجود دارد که بتوانید دیکشنریهای مختلف را با یکدیگر ادغام کنید. برای مثال، فرض کنید که ما دو دیکشنری به شکل زیر در اختیار داریم:
c1 = {
‘The Hound of the Baskervilles’: ‘Sherlock Holmes’,
‘To Kill A Mockingbird’: ‘Scout Finch’,
‘Heart of Darkness’: ‘Kurtz’
}
c2 = {
‘Lord of the Rings’: ‘Frodo Baggins’,
‘The Count of Monte Cristo’: ‘Edmond Dantès’
}
اولین راه برای اینکه بتوانید این دو دیکشنری را با هم ادغام کنید، این است که از عملگر | استفاده کنید. قطعه کد زیر را مشاهده کنید که مثالی در این خصوص ارائه میدهد:
>>> c = c1 | c2
>>> c
{‘The Hound of the Baskervilles’: ‘Sherlock Holmes’, ‘To Kill A Mockingbird’: ‘Scout Finch’, ‘Heart of Darkness’: ‘Kurtz’, ‘Lord of the Rings’: ‘Frodo Baggins’, ‘The Count of Monte Cristo’: ‘Edmond Dantès’}
علاوه بر این، شما میتوانید ترتیب ادغام این دو دیکشنری را نیز به شکل زیر عوض کنید:
>>> c = c2 | c1
>>> c
{‘Lord of the Rings’: ‘Frodo Baggins’, ‘The Count of Monte Cristo’: ‘Edmond Dantès’, ‘The Hound of the Baskervilles’: ‘Sherlock Holmes’, ‘To Kill A Mockingbird’: ‘Scout Finch’, ‘Heart of Darkness’: ‘Kurtz’}
روش دوم برای ادغام دو دیکشنری در زبان برنامهنویسی پایتون، استفاده از عملگر |= است که به شکل زیر میتوانید از آن استفاده کنید:
>>> c1 |= c2
>>> c1
{‘The Hound of the Baskervilles’: ‘Sherlock Holmes’, ‘To Kill A Mockingbird’: ‘Scout Finch’, ‘Heart of Darkness’: ‘Kurtz’, ‘Lord of the Rings’: ‘Frodo Baggins’, ‘The Count of Monte Cristo’: ‘Edmond Dantès’}
>>> c2
{‘Lord of the Rings’: ‘Frodo Baggins’, ‘The Count of Monte Cristo’: ‘Edmond Dantès’}
گاهی اوقات برای اینکه بتوانید دو دیکشنری مختلف را با یکدیگر ادغام کنید، میتوانید از عملگر ** نیز استفاده کنید که نحوه انجام این کار به شکل زیر خواهد بود:
>>> c3 = {**c1, **c2}
>>> c3
{‘The Hound of the Baskervilles’: ‘Sherlock Holmes’, ‘To Kill A Mockingbird’: ‘Scout Finch’, ‘Heart of Darkness’: ‘Kurtz’, ‘Lord of the Rings’: ‘Frodo Baggins’, ‘The Count of Monte Cristo’: ‘Edmond Dantès’}
در نهایت، آخرین روش برای ادغام دو دیکشنری در پایتون نیز استفاده از متد dict.update() است که برای استفاده از آن، میتوانید از قطعه کد زیر کمک بگیرید:
>>> c1.update(c2)
>>> c1
{‘The Hound of the Baskervilles’: ‘Sherlock Holmes’, ‘To Kill A Mockingbird’: ‘Scout Finch’, ‘Heart of Darkness’: ‘Kurtz’, ‘Lord of the Rings’: ‘Frodo Baggins’, ‘The Count of Monte Cristo’: ‘Edmond Dantès’}
مرتبسازی حالت عنوان
با استفاده از این ترفند کاربردی در زبان برنامهنویسی پایتون، میتوانید خیلی راحت حرف اول هر کلمه را با حروف بزرگ بنویسید که این کار به شما در ایجاد یک عنوان کمک میکند. برای مثال، قطعه کد زیر را مشاهده کنید:
txt = “Welcome to my world”
x = txt.title()
print(x)
اگر از این قطعه کد در پایتون خروجی بگیرید، خروجی شما چیزی شبیه به متن زیر خواهد بود:
Welcome To My World
ایجاد یک رشته از لیستی از رشتهها
فرض کنید که در بخشی از پروژه خود، لیستی از رشتهها در اختیار دارید که میخواهید کل آن را به یک رشته تبدیل کنید. برای این کار، چند ترفند در زبان پایتون وجود دارد. ترفند اول استفاده از متد str() است که به شکل زیر میتوانید از آن استفاده کنید:
# List of strings
str_list = [“Python”, “is”, “fun”]
str_from_list = str(str_list)
print(str_from_list) # Output: “[‘Python’, ‘is’, ‘fun’]”
# List of numbers
num_list = [1, 2, 3]
str_from_num_list = str(num_list)
print(str_from_num_list) # Output: “[1, 2, 3]”
در ترفند دوم شما میتوانید از متد join() استفاده کنید که برای این کار، قطعه کد زیر به شما کمک خواهد کرد:
# For a list of strings
str_list = [“Python”, “is”, “fun”]
delimiter = ” ” # Define a delimiter
join_str = delimiter.join(str_list)
print(join_str) # Output: “Python is fun”
# For a list of numbers, convert each element to a string first
num_list = [1, 2, 3]
delimiter = ” ” # Define a delimiter
num_list_string = map(str, num_list) # Convert each element into a string first
join_num_str = delimiter.join(num_list_string)
print(join_num_str) # Output: “1 2 3”
در مقاله بعدی با دومین بخش از ترفند های کاربردی زبان برنامه نویسی پایتون آشنا میشوید.


