Table of Contents
خلاصهٔ سریع: ساختار کلی یک برنامهٔ پایتون
- هر خط یک دستور است (معمولاً یک خط = یک دستور)
- بلاکها با تورفتگی (indent) مشخص میشوند، نه با
{} - معمولاً از ۴ فاصله (space) برای هر سطح تورفتگی استفاده میشود.
- خط جدید = پایان دستور، مگر اینکه از
\یا پرانتز، براکت، آکولاد باز استفاده شده باشد.
مثال ساختار:
if x > 0:
print("مثبت")
if x > 10:
print("بزرگ")
print("پایان")متغیرها و انواع پایه
نامگذاری متغیر
- فقط حروف، اعداد و
_ - نباید با عدد شروع شود
- حساس به حروف کوچک و بزرگ:
ageباAgeفرق دارد.
مثال:
age = 20
user_name = "Ali"
PI = 3.14انواع اصلی
x_int = 10 # int
x_float = 3.5 # float
x_str = "سلام" # str
x_bool = True # bool
type(x_int) # <class 'int'>عملگرهای مهم
عملگرهای حسابی
+جمع-تفریق*ضرب/تقسیم (خروجی float)//تقسیم صحیح%باقیمانده**توان
5 + 3 # 8
7 / 2 # 3.5
7 // 2 # 3
7 % 2 # 1
2 ** 3 # 8عملگرهای مقایسهای
==برابر!=نابرابر>بزرگتر<کوچکتر>=بزرگتر یا مساوی<=کوچکتر یا مساوی
x == 10
x != 5
age >= 18عملگرهای منطقی
andوorیاnotنقیض
age > 18 and age < 30
age < 18 or age > 60
not is_rainingعملگرهای انتسابی
=انتساب+=,-=,=,/=,//=,%=,*=
x = 10
x += 5 # معادل x = x + 5
x *= 2رشتهها (Strings) — خلاصهٔ سینتکس
s1 = "سلام"
s2 = 'پایتون'
s3 = "سلام 'دنیا'"کاراکتر ویژه:
\nخط جدید\tتب\\بکاسلش\"کوتیشن دوتایی
text = "سلام\nخوبی؟"رشته چندخطی:
msg = """این یک
رشتهٔ چندخطی است"""ترکیب رشته:
"سلام " + "دنیا"
name = "Ali"
"سلام " + nameتکرار:
"ha" * 3 # "hahaha"ایندکس و برش:
s = "Python"
s[0] # 'P'
s[-1] # 'n'
s[1:4] # 'yth'
s[:3] # 'Pyt'
s[3:] # 'hon'لیست، تاپل، دیکشنری، مجموعه — سینتکس پایه
لیست (list)
nums = [1, 2, 3]
mixed = [1, "hi", True]
nums[0] # 1
nums[-1] # 3
nums.append(4)
nums.insert(1, 10)
nums.remove(2)
len(nums)برش:
nums[1:3]
nums[:2]
nums[2:]تاپل (tuple)
t = (1, 2, 3)
t[0] # 1
len(t)دیکشنری (dict)
user = {
"name": "Ali",
"age": 20
}
user["name"] # "Ali"
user["age"] = 21
user.keys()
user.values()
user.items()مجموعه (set)
s = {1, 2, 3}
s.add(4)
s.remove(2)
1 in sشرطها — الگوی رایج سینتکس
if / elif / else
if age >= 18:
print("بزرگسال")
elif age >= 13:
print("نوجوان")
else:
print("کودک")شرطهای تودرتو:
if x > 0:
if x > 10:
print("بزرگ و مثبت")
else:
print("مثبت ولی کوچک")حلقهها — الگوی رایج سینتکس
حلقه while
i = 0
while i < 5:
print(i)
i += 1حلقه for با range
for i in range(5): # 0 تا 4
print(i)
for i in range(2, 6): # 2 تا 5
print(i)
for i in range(0, 10, 2): # 0,2,4,6,8
print(i)for روی مجموعهٔ داده
for ch in "Python":
print(ch)
for item in [1, 2, 3]:
print(item)
for key, value in user.items():
print(key, value)break و continue
for i in range(10):
if i == 5:
break # خروج از حلقه
print(i)
for i in range(10):
if i % 2 == 0:
continue # برو به تکرار بعدی
print(i)توابع — سینتکس کوتاه
تعریف تابع
def greet():
print("سلام")
greet()پارامتر و مقدار بازگشتی
def add(a, b):
return a + b
result = add(3, 5)مقدار پیشفرض
def greet(name="دوست"):
print("سلام", name)
greet()
greet("Ali")ورودی / خروجی
دریافت ورودی
name = input("نام شما؟ ")
age_text = input("سن شما؟ ")
age = int(age_text) # تبدیل به عدد صحیحچاپ کردن
print("سلام", name)
print("سن شما:", age)پایان خط:
print("سلام", end=" ")
print("دنیا")
# خروجی: سلام دنیاجداکننده:
print(1, 2, 3, sep="-") # 1-2-3قالببندی رشته
f-string:
name = "Ali"
age = 20
print(f"من {name} هستم و {age} سالهام.")کار با فایل — الگوی رایج
# خواندن کل فایل
with open("data.txt", "r", encoding="utf-8") as f:
content = f.read()
# خواندن خط به خط
with open("data.txt", "r", encoding="utf-8") as f:
for line in f:
print(line.strip())
# نوشتن (بازنویسی)
with open("out.txt", "w", encoding="utf-8") as f:
f.write("سلام\n")
# افزودن
with open("out.txt", "a", encoding="utf-8") as f:
f.write("خط جدید\n")خطاها و try/except — الگوی کوتاه
try:
x = int(input("عدد: "))
print(10 / x)
except ValueError:
print("لطفاً عدد صحیح وارد کنید.")
except ZeroDivisionError:
print("تقسیم بر صفر مجاز نیست.")گرفتن هر خطا (برای تست، نه در کد نهایی حرفهای):
try:
risky()
except Exception as e:
print("خطا:", e)import و کتابخانهها
import ساده
import math
import random as rnd
from math import sqrt, pi
from datetime import datetimeاستفاده:
math.sqrt(16)
rnd.randint(1, 10)
datetime.now()کامنتها
- تکخطی:
# - چندخطی: از رشتهٔ سهتایی به عنوان توضیح:
# این یک کامنت تکخطی است
"""
این معمولاً برای
توضیحات چندخطی استفاده میشود
"""برنامهٔ اصلی — الگوی مرسوم
def main():
# کد اصلی برنامه
print("Hello")
if __name__ == "__main__":
main()نکات سریع سینتکس
- تورفتگی همیشـه با space یکسان (ترجیحاً ۴ تا)
- بلاکها بعد از
if,elif,else,for,while,def,class,try,except,withبا:شروع میشوند. - نامگذاری پیشنهادی:
- متغیر و تابع:
snake_caseمثلuser_name - ثابت: حروف بزرگ:
MAX_SIZE = 100 - چاپ نوع داده:
print(type(x)) - چک کردن عضو بودن:
- در لیست/رشته/مجموعه/دیکشنری:
x in collection
این برگهٔ تقلب فقط سینتکسها و الگوهای رایج را یادآوری میکند؛ برای توضیح کامل هر مبحث به فصل مربوطهٔ همان مبحث مراجعه کنید.