🧑‍💻PythonDev🧑‍💻
353 subscribers
86 photos
3 videos
15 files
78 links
Python tips and tricks
The Good, Bad and the Ugly

📚توی این کانال فقط قرار هست در مورد core python صحبت کنیم.

👨‍💻این کانال یک بلاگ شخصی هست و پیرامون نظرات و چیزهایی که توی این چند سال کد زدن یاد گرفتم (فقط برای کمک به دوستان تازه‌کار)👨‍💻


@Mtio975
Download Telegram
مثال زدنم گل کرده ، می‌خوام براتون مثال بزنم تا بلکه شروع جذابی داشته باشیم!🦦

بیایین فرض کنیم که سوار ی اتوبوسی شدیم و می خواییم بریم مسافرت .
راجع به اون شهرهایی که می خواییم بریم از قبل تحقیق کردیم و پرسیدیم از لیدر که چرا اینجا (چرا پایتون؟)
بعد رفتیم بلیط خریدیم(نصب پایتون) و خلاصه بارو بندیل و بستیم و برو که بریم !

خب بعد از کیلومترها که رفتیم میرسیم به اولین مقصدمون ، شهر متغیرها :
حالا قراره تو این شهر ببینیم چه خبره..
آماده ایین؟😁
#Fxl
ی چیزی که خیلی مرسومه ، اینه که من میگم x = 1
چی میشه ؟
وقتی همچین چیزی میگیم ، ی جایی از حافظه کامپیوتر اسمش هست x ، داخلش 1 قرار داده میشه.
بعد برای برنامه نویس ها خیلی پیش میاد که بنویسن x = x + 1
چجوری حساب میشه؟
اول میاد x + 1 رو حساب می‌کنه ، پیش خودش میگه که من چیزی به اسم یا مکان x می شناسم؟ میره چک می کنه و میفهمه بله ، و در داخلش عدد 1 قرار داده شده .
پس میشه 1 + 1 که میشه 2 و x مساوی 2 میشه.
حالا هرجا بنویسیم x به ما 2 میده.
خیلی بدیهی هستش ، و ما تو جبر همچین چیزی نداریم که x = x + 1
ما می خواستیم مقداردهی انجام بدیم نه اینکه بیا ی معادله حل کن.
بلکه بهش میگم x رو برابر x + 1 قرار بده.

نکته : خوبه که برای متغیر ها اسم های خوبی انتخاب کنیم.

#Fxl
نحوه اعلام متغیر پایتون معتبر میتونه هر طولی داشته باشه که دارای حروف بزرگ، کوچک (A تا Z، a تا z)، رقم (0-9) و آندرلاین (_) باشه.

نمونه نام‌گذاری متغیر در پایتون:
نمونه‌هایی از شناسه‌های معتبر: a123، _n، n_9 و غیره.

نمونه‌هایی از شناسه‌های نامعتبر: 1a، n٪ 4، n 9 و غیره.



نام متغیرها می‌تونه گروهی از حروف و ارقام باشه، اما اونها باید با یک حرف یا آندرلاین شروع بشن. توصیه میشه برای نام متغیر از حروف کوچک استفاده کنید.
#Fxl
#name
#variable
برای تخصیص مقدار به یک متغیر از عملگر Equal (=) استفاده میشه.



وقتی ما یک متغیر رو اعلان می‌کنیم، لازمه درک کنیم که مفسر پایتون چجوری کار می‌کنه. فرایند ایجاد متغیرها تا حدودی با بسیاری از زبان‌های برنامه‌نویسی متفاوته.
پایتون زبان برنامه‌نویسی بسیار شیء گراست. به مثال توجه کنید :
آبجکت پایتون یک عدد صحیح ایجاد می کنه و اون رو روی کنسول نمایش میده ، در دستور چاپ بالا ، یک شئ رشته ایجاد کرده و نوع اون رو با استفاده از تابع type() مشخص کردیم.
#Fxl
#variable
#str
#Hello_world
در پایتون، متغیرها یک نام نمادین هستند که مرجع یا اشاره‌گر یک شیء هستند.
متغیرها برای نشون دادن اشیاء با اون نام استفاده میشن.
#Fxl
#variable
بیایید باهم چند مثال تحلیل کنیم :



در این تصویر ، متغیر a به یک شیء صحیح اشاره داره.

#Fxl
فرض کنید مقدار صحیح 70 رو به یک متغیر جدید b اختصاص میدیم.

a = 70
b = a

متغیر b به همون شیء اشاره می‌کنه که به a اشاره می‌کنه ، چون پایتون شیء دیگری ایجاد نمی‌کنه.

#Fxl
1
بیایید مقدار جدید رو به b اختصاص بدیم . حالا هر دو متغیر به اشیاء مختلف ارجاع داده میشن.

a =70
b =90

اگه متغیر یکسانی رو به دو مقدار متفاوت اختصاص بدیم ، پایتون به‌طور مؤثر حافظه رو مدیریت می‌کنه.

#Fxl
هویت شیء در پایتون :

در پایتون، هر شیء ایجادشده به‌طور منحصربه‌فرد مشخص میشه.
پایتون تضمین می‌کنه که هیچ دو شیء شناسه یکسانی ندارند.
تابع id () داخلی، برای شناسایی شناسه شیء استفاده میشه.
به مثال توجه کنید.

#Fxl
خروجی :

ما b = a، a و b رو هر دو به یک شیء یکسان اختصاص میدیم.
وقتی تابع id () رو بررسی می‌کنیم ، همون شماره رو برمی‌گردونه.
ما a رو به 500 واگذار می‌کنیم. و بعد به شناسه جدید شیء اشاره کرد.

#Fxl
👍2
🔷🔸Python Arrays🔸🔷

در پایتون، برای ذخیره و مدیریت داده‌ها، از ساختار داده‌ها استفاده می‌شود.
یکی از این ساختارها، آرایه (Array) است که نقطه قوت قابلیت ذخیره‌سازی داده‌های همنوع (داده‌هایی که همگی از یک نوع هستند) و دسترسی به عناصر با استفاده از شاخص‌ها است.

در پایتون، می‌توانیم از دو نوع آرایه استفاده کنیم: "لیست‌ها" (Lists) و "آرایه‌های numpy" (NumPy Arrays).

1. لیست‌ها:
لیست‌ها در پایتون یک ساختار داده پویا و چند منظوره هستند. با استفاده از لیست‌ها می‌توانیم داده‌های مختلف را در یک لیست ذخیره کنیم. برای ایجاد یک لیست، از علامت [] و اعضا را با کاما جدا می‌کنیم. مثال زیر روش‌های ساختن یک لیست را نشان می‌دهد:


   my_list = []  # ایجاد یک لیست خالی
my_list = [1, 2, 3, 4, 5] # ایجاد لیست با مقادیر اولیه
my_list = ['apple', 'banana', 'cherry'] # لیستی از رشته‌ها


لیست‌ها می‌توانند انواع مختلف داده‌ها را شامل شوند، مانند اعداد، رشته‌ها، لیست‌های دیگر و حتی ترکیبی از انواع مختلف. البته، در لیست‌ها همچنین می‌توانیم به عناصر با استفاده از اندیس (شاخص) دسترسی پیدا کنیم و در عملیات‌هایی مانند اضافه کردن، حذف، تغییر و مرتب‌سازی عناصر لیست، تغییراتی ایجاد کنیم.

2. آرایه‌های numpy:
آرایه‌های numpy یک کتابخانه پرکاربرد در پایتون هستند که مفهوم آرایه را گسترش می‌دهند. این کتابخانه امکانات بسیاری را برای عملیات عملیاتی، ریاضیاتی و استنباطی روی داده‌های چند بعدی فراهم می‌کند. برای استفاده از آرایه‌های numpy، ابتدا باید کتابخانه را با دستور import numpy as np وارد کنیم.

برخلاف لیست‌ها، آرایه‌های numpy باید از مقداردهی اولیه داده‌ها با استفاده از توابع خاصی مانند numpy.array() استفاده کنند. مثال زیر نشان می‌دهد که چگونه یک آرایه یک بعدی از لیست‌ها ایجاد کنیم:


   import numpy as np

my_array = np.array([1, 2, 3, 4, 5]) # ایجاد یک آرایه یک بعدی


آرایه‌های numpy قابلیت‌های بسیاری دارند، از جمله عملیات ریاضی و آماری، شاخص‌گذاری و برش، تبدیلات شکل و بسیاری دیگر.

در نتیجه، آرایه‌ها در پایتون ابزارهای قدرتمندی هستند که به ما امکان می‌دهند داده‌ها را سازماندهی و برای آن‌ها عملیات مختلفی انجام دهیم. 🦦📊

#FXL
#numpy
#Python_Arrays
🔷🔸Python PIP🔸🔷

به معنای "PIP Installs Packages." است. PIP یک سیستم مدیریت بسته‌ها در Python است که برای نصب و مدیریت بسته‌های نرم‌افزاری در Python استفاده می‌شود.

بسته‌ها در Python کدهای توسعه‌یافته‌ی قابل استفاده مجدد هستند که قابلیت‌ها و امکانات خاصی را به برنامه‌ها اضافه می‌کنند.
این بسته‌ها می‌توانند کتابخانه‌ها، ابزارها، فریم ورک‌ها و سایر منابع نیازمند در حوزه برنامه‌نویسی Python باشند. PIP، امکان نصب و به‌روزرسانی این بسته‌ها را فراهم می‌کند.

شما می‌توانید با استفاده از دستورات PIP، بسته‌های مورد نیاز خود را از Python Package Index (PyPI) دانلود و نصب کنید. PyPI یک مخزن در اینترنت است که بسته‌هایی را که توسط جامعه Python توسعه داده شده‌اند، میزبانی می‌کند.

بعضی از دستورات متداول PIP عبارتند از:

- pip install package_name: برای نصب یک بسته از PyPI.
- pip uninstall package_name: برای حذف یک بسته نصب شده.
- pip freeze: نمایش لیست تمام بسته‌های نصب شده به همراه نسخه آن‌ها.
- pip list: نمایش لیست بسته‌های نصب شده.
- pip show package_name: نمایش اطلاعات جزئیات یک بسته نصب شده.

همچنین، می‌توانید با استفاده از فایل requirements.txt، لیستی از بسته‌های مورد نیاز خود را جهت نصب و استفاده توسط PIP تعریف کنید.

پیشنهاد می‌شود قبل از استفاده از PIP، نسخه‌ی مناسبی از Python را نصب کنید و مطمئن شوید که محیط Python شما از PIP پشتیبانی می‌کند. 🐍📦


#FXL
در اینجا دو مثال ساده برای استخراج اطلاعات از یک وب سایت با استفاده از پایتون و کتابخانه beautifulsoup رو برای شما آوردم:

مثال 1: استخراج عنوان های خبرها از یک سایت خبری

import requests
from bs4 import BeautifulSoup

# ارسال درخواست به صفحه وب و دریافت پاسخ
response = requests.get('https://example.com/news')

# بررسی وضعیت درخواست
if response.status_code == 200:
# پارس کردن محتوای صفحه وب
soup = BeautifulSoup(response.text, 'html.parser')

# استخراج عنوان های خبرها
news_titles = soup.find_all('h2', class_='title')

# چاپ عنوان های خبرها
for title in news_titles:
print(title.text)
else:
print('درخواست موفقیت‌آمیز نبود.')


مثال 2 : استخراج قیمت ارزها از یک سایت ارزی

import requests
from bs4 import BeautifulSoup

# ارسال درخواست به صفحه وب و دریافت پاسخ
response = requests.get('https://example.com/currency')

# بررسی وضعیت درخواست
if response.status_code == 200:
# پارس کردن محتوای صفحه وب
soup = BeautifulSoup(response.text, 'html.parser')

# استخراج قیمت ارزها
currency_prices = soup.find_all('span', class_='price')

# چاپ قیمت ارزها
for price in currency_prices:
print(price.text)
else:
print('درخواست موفقیت‌آمیز نبود.')


لطفاً توجه داشته باشید که شما باید آدرس وب سایت مورد نظر خودتونو در توابع requests.get() قرار بدید و الگوهای HTML مورد استخراج رو براساس وب سایت خود تنظیم کنید.
همچنین، ممکنه برای استخراج اطلاعات از وب سایت خاصی نیاز به استفاده از تکنیک‌ها و قوانین خاص داشته باشید که برای هر مورد باید اونهارو بررسی کنید. 🕵️‍♀️


#FXL
#Web_scraping
#پایتون_پیشرفته
#استخراج