وبلاگ
مرجع سریع پایتون: چیت شیت ضروری برای هر برنامهنویس
فهرست مطالب
“تسلط به برنامهنویسی پایتون با هوش مصنوعی: آموزش کدنویسی هوشمند با ChatGPT”
"تسلط به برنامهنویسی پایتون با هوش مصنوعی: آموزش کدنویسی هوشمند با ChatGPT"
"با شرکت در این دوره جامع و کاربردی، به راحتی مهارتهای برنامهنویسی پایتون را از سطح مبتدی تا پیشرفته با کمک هوش مصنوعی ChatGPT بیاموزید. این دوره، با بیش از 6 ساعت محتوای آموزشی، شما را قادر میسازد تا به سرعت الگوریتمهای پیچیده را درک کرده و اپلیکیشنهای هوشمند ایجاد کنید. مناسب برای تمامی سطوح با زیرنویس فارسی حرفهای و امکان دانلود و تماشای آنلاین."
ویژگیهای کلیدی:
بدون نیاز به تجربه قبلی برنامهنویسی
زیرنویس فارسی با ترجمه حرفهای
۳۰ ٪ تخفیف ویژه برای دانشجویان و دانش آموزان
0 تا 100 عطرسازی + (30 فرمولاسیون اختصاصی حامی صنعت)
دوره آموزش Flutter و برنامه نویسی Dart [پروژه محور]
دوره جامع آموزش برنامهنویسی پایتون + هک اخلاقی [با همکاری شاهک]
دوره جامع آموزش فرمولاسیون لوازم آرایشی
دوره جامع علم داده، یادگیری ماشین، یادگیری عمیق و NLP
دوره فوق فشرده مکالمه زبان انگلیسی (ویژه بزرگسالان)
شمع سازی و عودسازی با محوریت رایحه درمانی
صابون سازی (دستساز و صنعتی)
صفر تا صد طراحی دارو
متخصص طب سنتی و گیاهان دارویی
متخصص کنترل کیفی شرکت دارویی
“`html
مرجع سریع پایتون: چیت شیت ضروری برای هر برنامهنویس
پایتون به عنوان یکی از محبوبترین زبانهای برنامهنویسی، به دلیل سادگی، خوانایی بالا و گستردگی کتابخانهها و فریمورکها، در زمینههای مختلفی از جمله توسعه وب، علم داده، یادگیری ماشین و اتوماسیون مورد استفاده قرار میگیرد. این چیت شیت جامع، مجموعهای از دستورات، توابع و مفاهیم کلیدی پایتون را به صورت مختصر و کاربردی ارائه میدهد تا به برنامهنویسان، به خصوص مبتدیان، کمک کند تا به سرعت کدنویسی کرده و مشکلات خود را حل کنند. این مرجع برای برنامهنویسان با تجربه نیز میتواند به عنوان یک یادآور سریع و کارآمد عمل کند.
1. مبانی پایتون: متغیرها، انواع داده و عملگرها
در این بخش، به بررسی مفاهیم پایهای پایتون، از جمله نحوه تعریف متغیرها، انواع دادههای پرکاربرد و عملگرهای مختلف میپردازیم. درک این مبانی برای شروع کدنویسی پایتون ضروری است.
1.1. متغیرها
در پایتون، متغیرها برای ذخیره دادهها استفاده میشوند. نام متغیر میتواند شامل حروف، اعداد و زیرخط (_) باشد، اما نباید با عدد شروع شود. پایتون یک زبان پویا است، به این معنی که نیازی به تعریف نوع متغیر نیست و نوع آن به طور خودکار بر اساس مقدار انتسابی تعیین میشود.
# تعریف متغیرهای مختلف
name = "John Doe" # رشته
age = 30 # عدد صحیح
height = 1.75 # عدد اعشاری
is_student = True # مقدار بولی
1.2. انواع داده
پایتون انواع دادههای مختلفی را پشتیبانی میکند. مهمترین آنها عبارتند از:
- int: اعداد صحیح (مثال: 10، -5، 0)
- float: اعداد اعشاری (مثال: 3.14، -2.5، 0.0)
- str: رشتهها (مثال: “Hello”، “Python”)
- bool: مقادیر بولی (True یا False)
- list: لیستها (مجموعهای مرتب از عناصر، قابل تغییر)
- tuple: تاپلها (مجموعهای مرتب از عناصر، غیرقابل تغییر)
- dict: دیکشنریها (مجموعهای از جفتهای کلید-مقدار)
- set: مجموعهها (مجموعهای نامرتب از عناصر منحصر به فرد)
# مثالهایی از انواع داده
my_list = [1, 2, 3, "a", "b"]
my_tuple = (1, 2, 3)
my_dict = {"name": "John", "age": 30}
my_set = {1, 2, 3, 3} # تکراریها حذف میشوند
1.3. عملگرها
پایتون عملگرهای مختلفی را برای انجام محاسبات، مقایسهها و عملیات منطقی ارائه میدهد. برخی از مهمترین آنها عبارتند از:
- عملگرهای محاسباتی: +, -, *, /, // (تقسیم صحیح), % (باقیمانده), ** (توان)
- عملگرهای مقایسهای: == (برابر), != (نابرابر), >, <, >=, <=
- عملگرهای منطقی: and, or, not
- عملگرهای انتساب: =, +=, -=, *=, /=
- عملگرهای عضویت: in, not in
- عملگرهای هویت: is, is not
# مثالهایی از عملگرها
a = 10
b = 5
print(a + b) # 15
print(a > b) # True
print(a % b) # 0
if a > 5 and b < 10:
print("شرط برقرار است")
2. ساختارهای کنترلی: شرطها و حلقهها
ساختارهای کنترلی به شما امکان میدهند تا جریان اجرای برنامه را کنترل کنید. در این بخش، به بررسی دستورات شرطی (if, elif, else) و حلقهها (for, while) میپردازیم.
2.1. دستورات شرطی (if, elif, else)
دستورات شرطی به شما اجازه میدهند تا بر اساس یک شرط خاص، یک بلوک کد را اجرا کنید. دستور `if` شرط اصلی را بررسی میکند، `elif` شرایط فرعی را بررسی میکند (در صورت نادرست بودن شرط `if`)، و `else` زمانی اجرا میشود که هیچ کدام از شرایط `if` و `elif` درست نباشند.
x = 10
if x > 0:
print("x مثبت است")
elif x < 0:
print("x منفی است")
else:
print("x صفر است")
2.2. حلقهها (for, while)
حلقهها به شما امکان میدهند تا یک بلوک کد را چندین بار تکرار کنید. حلقه `for` برای تکرار بر روی یک دنباله (مانند لیست، تاپل یا رشته) استفاده میشود، در حالی که حلقه `while` تا زمانی که یک شرط خاص برقرار باشد، اجرا میشود.
# حلقه for
my_list = [1, 2, 3, 4, 5]
for item in my_list:
print(item)
# حلقه while
i = 0
while i < 5:
print(i)
i += 1
دستورات `break` و `continue`:
- `break`: اجرای حلقه را به طور کامل متوقف میکند.
- `continue`: از اجرای بقیه کد در تکرار فعلی حلقه صرف نظر میکند و به تکرار بعدی میرود.
3. توابع: تعریف، فراخوانی و آرگومانها
توابع بلوکهایی از کد هستند که میتوانند چندین بار در برنامه فراخوانی شوند. استفاده از توابع به سازماندهی کد، جلوگیری از تکرار و افزایش خوانایی کمک میکند.
3.1. تعریف تابع
برای تعریف یک تابع در پایتون، از کلمه کلیدی `def` استفاده میشود. نام تابع، پارامترهای ورودی (در صورت وجود) و بدنه تابع باید مشخص شوند.
def greet(name):
"""این تابع یک پیام خوشامدگویی چاپ میکند."""
print("سلام، " + name + "!")
3.2. فراخوانی تابع
برای فراخوانی یک تابع، کافی است نام آن را به همراه آرگومانهای مورد نیاز (در صورت وجود) در پرانتز بنویسید.
greet("Alice") # خروجی: سلام، Alice!
3.3. آرگومانها
توابع میتوانند آرگومانهای مختلفی را دریافت کنند. آرگومانها میتوانند موقعیتی (بر اساس ترتیب) یا کلیدواژهای (بر اساس نام) باشند. همچنین میتوان برای پارامترها مقادیر پیشفرض تعیین کرد.
def power(base, exponent=2):
"""این تابع توان یک عدد را محاسبه میکند."""
return base ** exponent
print(power(3)) # خروجی: 9 (توان پیشفرض 2 است)
print(power(3, 3)) # خروجی: 27
print(power(exponent=3, base=3)) # خروجی: 27 (آرگومانهای کلیدواژهای)
3.4. return
دستور return برای برگرداندن یک مقدار از تابع به محل فراخوانی استفاده میشود. اگر تابع return نداشته باشد، به طور پیشفرض مقدار None برگردانده میشود.
def add(a, b):
return a + b
result = add(5, 3)
print(result) # Output: 8
4. کار با رشتهها
رشتهها در پایتون دنبالهای از کاراکترها هستند. پایتون ابزارهای قدرتمندی را برای کار با رشتهها ارائه میدهد، از جمله برش (slicing)، اتصال (concatenation)، قالببندی (formatting) و جستجو.
4.1. برش (Slicing)
برش به شما امکان میدهد تا بخشی از یک رشته را استخراج کنید.
my_string = "Python is awesome"
print(my_string[0:6]) # خروجی: Python
print(my_string[7:]) # خروجی: is awesome
print(my_string[:6]) # خروجی: Python
print(my_string[-7:]) # خروجی: awesome
4.2. اتصال (Concatenation)
برای اتصال دو یا چند رشته، از عملگر `+` استفاده میشود.
str1 = "Hello"
str2 = "World"
print(str1 + " " + str2) # خروجی: Hello World
4.3. قالببندی (Formatting)
پایتون روشهای مختلفی برای قالببندی رشتهها ارائه میدهد، از جمله استفاده از f-strings و متد `format()`.
name = "Alice"
age = 30
# f-string
print(f"نام: {name}, سن: {age}")
# format()
print("نام: {}, سن: {}".format(name, age))
4.4. متدهای رشتهای
پایتون متدهای داخلی زیادی برای کار با رشتهها دارد. برخی از مهمترین آنها عبارتند از:
- `len()`: طول رشته را برمیگرداند.
- `lower()`: تمام حروف رشته را به حروف کوچک تبدیل میکند.
- `upper()`: تمام حروف رشته را به حروف بزرگ تبدیل میکند.
- `strip()`: فضاهای خالی ابتدا و انتهای رشته را حذف میکند.
- `split()`: رشته را بر اساس یک جداکننده به یک لیست تبدیل میکند.
- `replace()`: یک زیررشته را با زیررشته دیگری جایگزین میکند.
- `find()`: اندیس اولین رخداد یک زیررشته را در رشته برمیگرداند (اگر یافت نشد، -1 برمیگرداند).
- `startswith()`: بررسی میکند که آیا رشته با یک زیررشته خاص شروع میشود یا خیر.
- `endswith()`: بررسی میکند که آیا رشته با یک زیررشته خاص به پایان میرسد یا خیر.
my_string = " Python is fun! "
print(len(my_string)) # خروجی: 18
print(my_string.lower()) # خروجی: python is fun!
print(my_string.strip()) # خروجی: Python is fun!
print(my_string.split(" ")) # خروجی: ['', '', 'Python', 'is', 'fun!', '', '']
print(my_string.replace("fun", "awesome")) # خروجی: Python is awesome!
print(my_string.find("is")) # خروجی: 9
5. لیستها، تاپلها و دیکشنریها
لیستها، تاپلها و دیکشنریها از جمله ساختارهای دادهای پرکاربرد در پایتون هستند. لیستها و تاپلها برای ذخیره مجموعهای از عناصر مرتب استفاده میشوند، در حالی که دیکشنریها برای ذخیره جفتهای کلید-مقدار استفاده میشوند.
5.1. لیستها
لیستها مجموعهای مرتب و قابل تغییر از عناصر هستند. عناصر یک لیست میتوانند از انواع دادههای مختلف باشند.
my_list = [1, "hello", 3.14, True]
print(my_list[0]) # خروجی: 1
my_list[1] = "world"
print(my_list) # خروجی: [1, 'world', 3.14, True]
متدهای لیست:
- `append()`: یک عنصر را به انتهای لیست اضافه میکند.
- `insert()`: یک عنصر را در یک موقعیت مشخص در لیست درج میکند.
- `remove()`: اولین رخداد یک عنصر را از لیست حذف میکند.
- `pop()`: عنصر موجود در یک موقعیت مشخص را از لیست حذف میکند و آن را برمیگرداند.
- `index()`: اندیس اولین رخداد یک عنصر را در لیست برمیگرداند.
- `count()`: تعداد رخدادهای یک عنصر را در لیست برمیگرداند.
- `sort()`: لیست را به صورت صعودی مرتب میکند (به طور پیشفرض).
- `reverse()`: ترتیب عناصر لیست را معکوس میکند.
my_list = [1, 2, 3]
my_list.append(4)
print(my_list) # خروجی: [1, 2, 3, 4]
my_list.insert(1, 5)
print(my_list) # خروجی: [1, 5, 2, 3, 4]
my_list.remove(2)
print(my_list) # خروجی: [1, 5, 3, 4]
print(my_list.pop(1)) # خروجی: 5
print(my_list) # خروجی: [1, 3, 4]
5.2. تاپلها
تاپلها مجموعهای مرتب و غیرقابل تغییر از عناصر هستند. پس از ایجاد یک تاپل، نمیتوان عناصر آن را تغییر داد یا به آن اضافه کرد.
my_tuple = (1, "hello", 3.14)
print(my_tuple[0]) # خروجی: 1
# my_tuple[0] = 2 # این کار باعث خطا میشود (تاپلها غیرقابل تغییر هستند)
5.3. دیکشنریها
دیکشنریها مجموعهای از جفتهای کلید-مقدار هستند. هر کلید باید منحصر به فرد باشد و مقدار متناظر با آن میتواند از هر نوع دادهای باشد.
my_dict = {"name": "John", "age": 30, "city": "New York"}
print(my_dict["name"]) # خروجی: John
my_dict["age"] = 31
print(my_dict) # خروجی: {'name': 'John', 'age': 31, 'city': 'New York'}
متدهای دیکشنری:
- `keys()`: کلیدهای دیکشنری را برمیگرداند.
- `values()`: مقادیر دیکشنری را برمیگرداند.
- `items()`: جفتهای کلید-مقدار دیکشنری را به صورت تاپل برمیگرداند.
- `get()`: مقدار متناظر با یک کلید را برمیگرداند (اگر کلید وجود نداشته باشد، None برمیگرداند).
- `pop()`: مقدار متناظر با یک کلید را حذف میکند و آن را برمیگرداند.
- `update()`: دیکشنری را با جفتهای کلید-مقدار دیکشنری دیگری بهروز میکند.
my_dict = {"name": "John", "age": 30}
print(my_dict.keys()) # خروجی: dict_keys(['name', 'age'])
print(my_dict.values()) # خروجی: dict_values(['John', 30])
print(my_dict.items()) # خروجی: dict_items([('name', 'John'), ('age', 30)])
print(my_dict.get("city")) # خروجی: None
print(my_dict.get("city", "Unknown")) # خروجی: Unknown
6. مدیریت خطاها (Exceptions)
مدیریت خطاها یک بخش ضروری از برنامهنویسی است. پایتون از مکانیزم `try...except` برای مدیریت خطاها استفاده میکند.
try:
result = 10 / 0
except ZeroDivisionError:
print("تقسیم بر صفر امکانپذیر نیست")
except Exception as e:
print(f"یک خطای نامشخص رخ داد: {e}")
finally:
print("این قسمت همیشه اجرا میشود")
در این مثال، کد داخل بلوک `try` اجرا میشود. اگر خطای `ZeroDivisionError` رخ دهد، بلوک `except ZeroDivisionError` اجرا میشود. اگر خطای دیگری رخ دهد، بلوک `except Exception as e` اجرا میشود. بلوک `finally` همیشه اجرا میشود، صرف نظر از اینکه خطایی رخ داده باشد یا نه.
انواع رایج خطاها:
- `ZeroDivisionError`: تقسیم بر صفر.
- `TypeError`: عملیات نامعتبر بر روی نوع داده.
- `ValueError`: آرگومان نامعتبر برای یک تابع.
- `IndexError`: اندیس خارج از محدوده لیست یا تاپل.
- `KeyError`: کلید وجود ندارد در دیکشنری.
- `FileNotFoundError`: فایل مورد نظر یافت نشد.
- `ImportError`: ماژول مورد نظر یافت نشد.
7. کار با فایلها
پایتون ابزارهای قدرتمندی را برای خواندن و نوشتن فایلها ارائه میدهد.
# باز کردن یک فایل برای خواندن
try:
with open("my_file.txt", "r") as file:
content = file.read()
print(content)
except FileNotFoundError:
print("فایل یافت نشد")
# باز کردن یک فایل برای نوشتن
with open("my_file.txt", "w") as file:
file.write("Hello, world!\n")
file.write("This is a new line.")
# باز کردن یک فایل برای اضافه کردن
with open("my_file.txt", "a") as file:
file.write("\nAppending to the file.")
حالتهای باز کردن فایل:
- `"r"`: خواندن (فایل باید وجود داشته باشد).
- `"w"`: نوشتن (اگر فایل وجود نداشته باشد، ایجاد میشود؛ اگر وجود داشته باشد، محتوای آن پاک میشود).
- `"a"`: اضافه کردن (اگر فایل وجود نداشته باشد، ایجاد میشود).
- `"x"`: ایجاد (اگر فایل وجود داشته باشد، خطا رخ میدهد).
- `"b"`: حالت باینری.
- `"t"`: حالت متنی (پیشفرض).
- `"+"`: باز کردن برای بهروزرسانی (خواندن و نوشتن).
8. ماژولها و پکیجها
ماژولها و پکیجها ابزارهایی برای سازماندهی و استفاده مجدد از کد هستند. یک ماژول یک فایل پایتون است که شامل توابع، کلاسها و متغیرها است. یک پکیج مجموعهای از ماژولها است که در یک دایرکتوری قرار دارند.
8.1. import
برای استفاده از یک ماژول، باید آن را با استفاده از دستور `import` وارد کنید.
import math
print(math.sqrt(16)) # خروجی: 4.0
همچنین میتوانید فقط توابع یا کلاسهای خاصی را از یک ماژول وارد کنید:
from math import sqrt, pi
print(sqrt(25)) # خروجی: 5.0
print(pi) # خروجی: 3.141592653589793
میتوانید یک نام مستعار برای ماژول یا تابع وارد شده تعیین کنید:
import math as m
print(m.sqrt(9)) # خروجی: 3.0
8.2. پکیجها
پکیجها به شما امکان میدهند تا ماژولها را در یک ساختار سلسلهمراتبی سازماندهی کنید. یک پکیج معمولاً شامل یک فایل `__init__.py` است که میتواند خالی باشد یا کدی را برای مقداردهی اولیه پکیج اجرا کند.
برای وارد کردن یک ماژول از یک پکیج، از نام پکیج به عنوان پیشوند استفاده کنید:
# فرض کنید یک پکیج به نام my_package دارید
# که شامل یک ماژول به نام my_module است
import my_package.my_module
my_package.my_module.my_function()
9. کلاسها و شیءگرایی
پایتون یک زبان برنامهنویسی شیءگرا است. کلاسها الگوهایی برای ایجاد اشیاء هستند. یک شیء نمونهای از یک کلاس است.
class Dog:
def __init__(self, name, breed):
self.name = name
self.breed = breed
def bark(self):
print("Woof!")
my_dog = Dog("Buddy", "Golden Retriever")
print(my_dog.name) # خروجی: Buddy
my_dog.bark() # خروجی: Woof!
مفاهیم کلیدی شیءگرایی:
- کلاس: یک الگو یا طرح اولیه برای ایجاد اشیاء.
- شیء: نمونهای از یک کلاس.
- ویژگی (Attribute): یک متغیر که به یک شیء مرتبط است.
- متد (Method): یک تابع که به یک شیء مرتبط است.
- وراثت (Inheritance): امکان ایجاد کلاسهای جدید بر اساس کلاسهای موجود.
- چندشکلی (Polymorphism): امکان استفاده از یک رابط مشترک برای اشیاء مختلف.
- کپسولهسازی (Encapsulation): مخفی کردن جزئیات پیادهسازی از کاربر.
10. کتابخانههای پرکاربرد پایتون
پایتون دارای اکوسیستم گستردهای از کتابخانهها و فریمورکها است که برای انجام وظایف مختلف مورد استفاده قرار میگیرند. برخی از پرکاربردترین آنها عبارتند از:
- NumPy: برای محاسبات عددی و آرایههای چندبعدی.
- Pandas: برای تحلیل و دستکاری دادهها (DataFrame).
- Matplotlib: برای رسم نمودارها و تجسم دادهها.
- Scikit-learn: برای یادگیری ماشین.
- Requests: برای ارسال درخواستهای HTTP.
- Beautiful Soup: برای تجزیه HTML و XML.
- Flask/Django: برای توسعه وب.
- TensorFlow/PyTorch: برای یادگیری عمیق.
مثال استفاده از NumPy:
import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr.mean()) # خروجی: 3.0
مثال استفاده از Pandas:
import pandas as pd
data = {'name': ['Alice', 'Bob', 'Charlie'], 'age': [25, 30, 28]}
df = pd.DataFrame(data)
print(df)
```
“تسلط به برنامهنویسی پایتون با هوش مصنوعی: آموزش کدنویسی هوشمند با ChatGPT”
"تسلط به برنامهنویسی پایتون با هوش مصنوعی: آموزش کدنویسی هوشمند با ChatGPT"
"با شرکت در این دوره جامع و کاربردی، به راحتی مهارتهای برنامهنویسی پایتون را از سطح مبتدی تا پیشرفته با کمک هوش مصنوعی ChatGPT بیاموزید. این دوره، با بیش از 6 ساعت محتوای آموزشی، شما را قادر میسازد تا به سرعت الگوریتمهای پیچیده را درک کرده و اپلیکیشنهای هوشمند ایجاد کنید. مناسب برای تمامی سطوح با زیرنویس فارسی حرفهای و امکان دانلود و تماشای آنلاین."
ویژگیهای کلیدی:
بدون نیاز به تجربه قبلی برنامهنویسی
زیرنویس فارسی با ترجمه حرفهای
۳۰ ٪ تخفیف ویژه برای دانشجویان و دانش آموزان