Python3
200 subscribers
100 photos
6 videos
26 files
518 links
🎓 آموزش و پروژه‌های Python
آموزش‌های کاربردی و پروژه‌های عملی Python برای همه سطوح. 🚀
Download Telegram
💡 آموزش کتابخانه SQLAlchemy برای کار با پایگاه داده در پایتون 🐍💾

SQLAlchemy چیست؟ 🤔
SQLAlchemy یک کتابخانه پایتون است که امکانات فراوانی برای کار با پایگاه داده‌ها فراهم می‌کند. این کتابخانه به شما امکان می‌دهد تا به سادگی با پایگاه داده‌های مختلف مانند SQLite، MySQL، PostgreSQL و Oracle ارتباط برقرار کنید و عملیات‌های مختلفی مانند ایجاد جداول، درج، ویرایش و حذف داده‌ها را انجام دهید.

نصب SQLAlchemy 📥
برای نصب SQLAlchemy می‌توانید از pip استفاده کنید:
pip install sqlalchemy

قابلیت‌های کلیدی SQLAlchemy 🌟

1. تعریف مدل‌ها با ORM (Object-Relational Mapping) 🗃️
SQLAlchemy به شما امکان می‌دهد تا مدل‌های پایگاه داده خود را با استفاده از کلاس‌های پایتون تعریف کنید.

2. ساخت و مدیریت جداول 📊
به راحتی می‌توانید جداول پایگاه داده را ایجاد، تغییر و حذف کنید.

3. انجام عملیات‌های CRUD (Create, Read, Update, Delete) 📝
SQLAlchemy امکان انجام عملیات‌های مختلف روی داده‌ها را به صورت ساده و روان فراهم می‌کند.

4. انجام کوئری‌های پیچیده 🔄
شما می‌توانید کوئری‌های پیچیده SQL را با استفاده از SQLAlchemy به صورت ساده‌تری بنویسید و اجرا کنید.

مثال‌های کاربردی با SQLAlchemy 📚

ایجاد یک جدول و درج داده 📝

توضیح: در این مثال، ما ابتدا یک موتور ارتباطی با پایگاه داده SQLite ایجاد می‌کنیم، سپس یک کلاس مدل تعریف می‌کنیم که نشان‌دهنده یک جدول در پایگاه داده است. در نهایت، جدول را ایجاد کرده و داده‌ها را در آن درج می‌کنیم.

from sqlalchemy import create_engine, Column, Integer, String, Sequence
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker

# ایجاد موتور ارتباطی با پایگاه داده SQLite
engine = create_engine('sqlite:///example.db', echo=True)

# تعریف یک کلاس پایه برای مدل‌ها
Base = declarative_base()

# تعریف یک مدل (جدول)
class User(Base):
__tablename__ = 'users'
id = Column(Integer, Sequence('user_id_seq'), primary_key=True)
name = Column(String(50))
age = Column(Integer)

# ایجاد جداول در پایگاه داده
Base.metadata.create_all(engine)

# ایجاد یک جلسه برای انجام عملیات‌های CRUD
Session = sessionmaker(bind=engine)
session = Session()

# درج داده در جدول
new_user = User(name='Ali', age=30)
session.add(new_user)
session.commit()

در این مثال:
- ابتدا موتور ارتباطی با پایگاه داده SQLite ایجاد می‌شود.
- سپس یک کلاس مدل به نام User تعریف می‌شود که نشان‌دهنده یک جدول با ستون‌های id، name و age است.
- جداول بر اساس مدل‌ها در پایگاه داده ایجاد می‌شوند.
- یک جلسه ایجاد شده و داده جدیدی در جدول درج می‌شود.

انجام یک کوئری برای بازیابی داده‌ها 📋

توضیح: در این مثال، ما یک کوئری ساده برای بازیابی تمام کاربران از جدول users انجام می‌دهیم.

# بازیابی تمام کاربران از جدول
users = session.query(User).all()

# نمایش کاربران
for user in users:
print(f'ID: {user.id}, Name: {user.name}, Age: {user.age}')

در این مثال:
- از جلسه استفاده می‌شود تا تمام کاربران از جدول users بازیابی شوند.
- سپس اطلاعات کاربران نمایش داده می‌شود.

منابع یادگیری SQLAlchemy 📚
- مستندات رسمی SQLAlchemy: بهترین منبع برای شروع یادگیری و استفاده از SQLAlchemy.
- کتاب‌ها و دوره‌های آنلاین: بسیاری از کتاب‌ها و دوره‌های آنلاین موجود هستند که به شما کمک می‌کنند تا مهارت‌های خود را در استفاده از SQLAlchemy بهبود بخشید.

امیدوارم این معرفی برای شما مفید باشد! 😊

[لینک کانالمون]

#برنامه‌نویسی #پایتون #SQLAlchemy #پایگاه‌داده #ORM #تلگرام_آموزشی
👍2
📚 آموزش جامع کتابخانه Spacy در پایتون 🐍

سلام دوستان! امروز می‌خواهیم درباره‌ی یکی از کتابخانه‌های قدرتمند پردازش زبان طبیعی (NLP) در پایتون به نام Spacy صحبت کنیم. این کتابخانه ابزارهای متعددی برای کار با متن و تجزیه و تحلیل زبان طبیعی فراهم می‌کند. بیایید با هم یاد بگیریم! 🚀

1. نصب Spacy 📦

ابتدا باید کتابخانه Spacy را نصب کنیم. برای این کار از دستور زیر استفاده کنید:

pip install spacy

2. دانلود مدل زبانی 🗣️

Spacy برای پردازش زبان نیاز به مدل‌های زبانی دارد. برای مثال، برای زبان انگلیسی از مدل زیر استفاده می‌کنیم:

python -m spacy download en_core_web_sm

3. شروع کار با Spacy 🌟

پس از نصب Spacy و دانلود مدل زبانی، می‌توانیم کار خود را آغاز کنیم. ابتدا کتابخانه را وارد کرده و مدل زبانی را بارگذاری می‌کنیم:

import spacy

# بارگذاری مدل زبانی انگلیسی
nlp = spacy.load("en_core_web_sm")

4. پردازش متن 📝

حالا می‌توانیم متنی را با استفاده از مدل زبانی پردازش کنیم:

text = "Apple is looking at buying U.K. startup for $1 billion"
doc = nlp(text)

📌 توضیح:
- text متنی است که می‌خواهیم پردازش کنیم.
- doc شیء‌ای است که متن پردازش شده را در بر می‌گیرد.

5. استخراج اطلاعات 📊

می‌توانیم اطلاعات مختلفی را از متن استخراج کنیم، مثل کلمات، ریشه کلمات، برچسب‌های دستوری و موجودیت‌های نام‌دار:

5.1. استخراج کلمات و برچسب‌های دستوری

for token in doc:
print(token.text, token.pos_, token.dep_)

📌 توضیح:
- token.text کلمه را نمایش می‌دهد.
- token.pos_ برچسب دستوری کلمه را نمایش می‌دهد.
- token.dep_ وابستگی نحوی کلمه را نمایش می‌دهد.

5.2. استخراج موجودیت‌های نام‌دار

for ent in doc.ents:
print(ent.text, ent.label_)

📌 توضیح:
- ent.text موجودیت نام‌دار را نمایش می‌دهد.
- ent.label_ نوع موجودیت را نمایش می‌دهد.

6. توکنیزه کردن متن 🍰

توکنیزه کردن یعنی شکستن متن به واحدهای کوچکتر (کلمات و جملات). Spacy این کار را به سادگی انجام می‌دهد:

for token in doc:
print(token.text)

📌 توضیح:
- این کد هر کلمه (توکن) در متن را نمایش می‌دهد.

7. Lemmatization (ریشه‌یابی) 🌱

ریشه‌یابی یعنی تبدیل کلمات به شکل پایه‌شان. برای مثال، تبدیل running به run:

for token in doc:
print(token.text, token.lemma_)

📌 توضیح:
- token.lemma_ ریشه کلمه را نمایش می‌دهد.

8. تجزیه و تحلیل نحوی 🌐

Spacy می‌تواند ساختار نحوی جملات را تحلیل کند:

for token in doc:
print(token.text, token.head.text, token.dep_)

📌 توضیح:
- token.head.text کلمه ریشه در وابستگی نحوی را نمایش می‌دهد.
- token.dep_ نوع وابستگی نحوی را نمایش می‌دهد.

9. تشخیص موجودیت‌های نام‌دار 📍

موجودیت‌های نام‌دار شامل اسامی افراد، مکان‌ها، سازمان‌ها و ... می‌شوند. Spacy می‌تواند این موجودیت‌ها را شناسایی کند:

for ent in doc.ents:
print(ent.text, ent.label_, ent.start_char, ent.end_char)

📌 توضیح:
- ent.text موجودیت نام‌دار را نمایش می‌دهد.
- ent.label_ نوع موجودیت را نمایش می‌دهد.
- ent.start_char و ent.end_char مکان شروع و پایان موجودیت در متن را نمایش می‌دهند.

10. تفاوت توابع و کلاس‌ها 📚

توابع به ما کمک می‌کنند که بخش‌هایی از کد را جداگانه تعریف کرده و هر زمان که خواستیم، از آنها استفاده کنیم. اما کلاس‌ها مجموعه‌ای از داده‌ها و توابع مرتبط هستند که برای مدل‌سازی اشیاء واقعی و رفتارهای آنها استفاده می‌شوند.


امیدوارم این آموزش برای شما مفید بوده باشد! 🌟 حتماً تمرین کنید و سوالات خود را در کامنت‌ها بپرسید. موفق باشید!

🔗 [کانال تلگرام ما]

#پایتون #آموزش #Spacy #پردازش_زبان_طبیعی #NLP #برنامه‌نویسی #توسعه‌دهندگان #مبتدیان
👍4
اموزش بکند و فرانت اند رو با پایتون بزارم
Anonymous Poll
81%
Yes🤩
19%
No f...😐
👍3
📢 آخرین اخبار پایتون - ژوئن ۲۰۲۴ 🐍

۱. پایان عمر پایتون ۳.۷:
نسخه ۳.۷ پایتون که در ژوئن ۲۰۱۸ منتشر شده بود، به پایان عمر خود رسید. از این به بعد، دیگر به‌روزرسانی‌های امنیتی برای این نسخه ارائه نخواهد شد. پیشنهاد می‌شود که به نسخه‌های جدیدتر مثل پایتون ۳.۱۱ یا ۳.۱۲ مهاجرت کنید تا از به‌روزرسانی‌های منظم و ویژگی‌های جدید بهره‌مند شوید

۲. انتشار Pydantic 2:
نسخه دوم کتابخانه محبوب Pydantic منتشر شد. این نسخه با بهبودهای عملکردی چشم‌گیر و ویژگی‌های جدید مانند "حالت سختگیرانه" و "جدول تبدیل رسمی" همراه است که اعتبارسنجی داده‌ها را سریع‌تر و قابل‌اعتمادتر می‌کند. این کتابخانه حالا تا ۵۰ برابر سریع‌تر از نسخه‌های قبلی

۳. انتخاب مدیر جدید امنیت در PSF:
Seth Michael Larson به عنوان اولین مدیر امنیت در محل اقامت (Security Developer in Residence) در بنیاد نرم‌افزار پایتون (PSF) انتخاب شد. او مسئول ارتقای امنیت در اکوسیستم پایتون و اجرای ممیزی‌های امنیتی است

۴. ابزار جدید Astral برای بسته‌بندی پایتون در Rust:
شرکت Astral ابزار جدیدی به نام "uv" معرفی کرده است که با هدف جایگزینی ابزارهای موجود مثل pip و pip-tools طراحی شده است. این ابزار با استفاده از Rust توسعه یافته و تا صد برابر سریع‌تر از ابزارهای موجود است

۵. معرفی قابلیت‌های جدید در CPython:
در راستای بهبود امنیت، CPython اکنون شامل اسناد SBOM (Software Bill of Materials) برای بسته‌های همراه است که می‌تواند در کد منبع CPython در GitHub یافت شود. این اسناد به شفافیت بیشتر در مورد وابستگی‌های نرم‌افزاری کمک می‌کنند

۶. انتخاب اعضای جدید هیئت مدیره PSF:
اعضای جدید و بازگشته به هیئت مدیره بنیاد نرم‌افزار پایتون انتخاب شدند. این تغییرات نشان‌دهنده تعهد مداوم به توسعه جامعه پایتون و ارتقای این زبان برنامه‌نویسی است

۷. بهبود مستندات و آموزش‌ها در پایتون:
تلاش‌های زیادی برای بهبود مستندات پایتون و فراهم کردن آموزش‌های جامع‌تر برای توسعه‌دهندگان جدید صورت گرفته است. این اقدامات شامل ارائه مقالات و راهنماهای جدید در زمینه‌های مختلف برنامه‌نویسی پایتون است

🔗 [برای اطلاعات بیشتر اینجا کلیک کنید]

#اخبار_پایتون #برنامه‌نویسی #Pydantic #Python3.7 #امنیت #ابزارهای_جدید
👍1
شروع دوره بک اند با پایتون
👍2
شروع آموزش جامع بک‌اند با پایتون

سلام به همه همراهان عزیز! 👋
با افتخار اعلام می‌کنیم که دوره جدیدی از آموزش‌های تخصصی و جامع بک‌اند با پایتون را به صورت متنی در کانال تلگرام خود آغاز کرده‌ایم. این دوره طراحی شده تا شما را از سطح مبتدی به سطح پیشرفته در برنامه‌نویسی بک‌اند برساند. اگر علاقه‌مند به یادگیری پایتون و توسعه بک‌اند هستید، این دوره برای شماست! 🚀

چرا این دوره؟

پایتون: زبانی قدرتمند و محبوب
پایتون یکی از پرکاربردترین زبان‌های برنامه‌نویسی است که به دلیل سادگی و امکانات گسترده‌اش برای توسعه بک‌اند بسیار محبوب است.

آموزش قدم به قدم
هر پارت شامل توضیحات دقیق و مثال‌های کاربردی است تا شما بتوانید به راحتی مفاهیم را درک کنید و در پروژه‌های خود به کار ببرید.

جامع و کاربردی
این دوره شامل مباحث پایه تا پیشرفته است، از نصب ابزارها و محیط‌های توسعه گرفته تا ایجاد API‌های پیشرفته و استقرار پروژه‌ها.

سرفصل‌های دوره:

1. معرفی و نصب ابزارها 📦
2. اصول برنامه‌نویسی با پایتون 🐍
3. کار با فایل‌ها و دیتابیس‌ها 🗄️
4. ایجاد اولین API با Flask 🌐
5. توسعه API پیشرفته با Flask 🚀
6. مدیریت پایگاه داده با SQLAlchemy 🗃️
7. مدیریت پروژه و کار با Git 🌳
8. تست و ارزیابی کد 🧪
9. استقرار پروژه 🌍
10. امنیت در بک‌اند 🔒

همراه ما باشید!

این فرصت عالی را از دست ندهید و همراه ما باشید تا به دنیای جذاب بک‌اند با پایتون وارد شوید. هر روز منتظر یک پارت جدید از این آموزش جذاب باشید. 🚀

🔗 لینک کانال تلگرام: [https://t.iss.one/hamidpython123]

#پایتون #بک_اند #برنامه_نویسی #آموزش #Python #Backend #Programming #آموزش_پایتون #توسعه_وب #API #Flask #SQLAlchemy #امنیت_وب #دیتابیس #Git
🔥2👏1
پارت ۱: معرفی و نصب ابزارها

سلام به همه! 👋 امروز با اولین پارت از آموزش جامع بک‌اند با پایتون در خدمت شما هستیم. این پارت شامل مقدمه‌ای بر بک‌اند و نصب ابزارهای مورد نیاز خواهد بود. 🚀

مقدمه‌ای بر بک‌اند و اهمیت آن:
بک‌اند به قسمت سرور و منطق کسب‌وکار یک وب‌سایت یا برنامه اطلاق می‌شود. این قسمت شامل مدیریت دیتابیس، احراز هویت کاربران، پردازش درخواست‌ها و ارسال پاسخ به کاربران است. بک‌اند نقش حیاتی در عملکرد صحیح و ایمن یک برنامه دارد. 🌐

چرا پایتون؟
پایتون یک زبان برنامه‌نویسی سطح بالا، خوانا و قدرتمند است که به دلیل سادگی و جامعه کاربری بزرگ، برای توسعه بک‌اند بسیار محبوب است. 🚀

نصب ابزارهای مورد نیاز 📦

برای شروع به کار با پایتون و توسعه بک‌اند، ابتدا باید ابزارهای زیر را نصب کنید:

1. نصب پایتون:
- به وب‌سایت رسمی پایتون [python.org]
بروید و آخرین نسخه پایتون را دانلود و نصب کنید.

2. نصب یک ویرایشگر کد:
- می‌توانید از هر ویرایشگر متنی استفاده کنید، اما پیشنهاد ما Visual Studio Code یا PyCharm است.
- [دانلود Visual Studio Code]
- [دانلود PyCharm]

3. راه‌اندازی محیط مجازی:
محیط مجازی به شما اجازه می‌دهد تا بسته‌ها و کتابخانه‌های پایتون را به صورت جداگانه برای هر پروژه مدیریت کنید. برای ایجاد یک محیط مجازی دستور زیر را در ترمینال وارد کنید:

   python -m venv myenv

سپس محیط مجازی را فعال کنید:
- در ویندوز:

     myenv\Scripts\activate

- در مک یا لینوکس:

     source myenv/bin/activate

شروع کار با پایتون

1. ایجاد یک پروژه جدید:
- یک پوشه جدید برای پروژه خود بسازید و وارد آن شوید.
- محیط مجازی را در این پوشه ایجاد و فعال کنید.

2. نصب بسته‌های مورد نیاز:
- برای نصب بسته‌های مورد نیاز از pip استفاده کنید. به عنوان مثال، برای نصب Flask (یک فریمورک وب محبوب برای پایتون):

     pip install Flask

3. ایجاد اولین برنامه:
- یک فایل جدید به نام app.py ایجاد کنید و کد زیر را در آن قرار دهید:

     from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
return 'Hello, World!'

if __name__ == '__main__':
app.run(debug=True)

4. اجرای برنامه:
- در ترمینال دستور زیر را وارد کنید تا برنامه اجرا شود:

     python app.py

- اکنون می‌توانید به مرورگر خود بروید و به آدرس
https://127.0.0.1:5000/

بروید و پیام "Hello, World!" را مشاهده کنید. 🎉

نتیجه‌گیری

در این پارت، با مقدمات بک‌اند، دلایل انتخاب پایتون، نصب ابزارهای مورد نیاز و راه‌اندازی اولین برنامه خود آشنا شدید. در پارت بعدی به اصول برنامه‌نویسی با پایتون خواهیم پرداخت. منتظر باشید! 🚀

[لینک کانال تلگرام ما]

#پایتون #بک_اند #برنامه_نویسی #آموزش #Python #Backend #Programming
👍3👏1🆒1
❓️نظرتون در مورد این پارت چیه🧐

[آموزش پایتون]
👍4👏1
پارت ۲: اصول اولیه بک‌اند با پایتون

سلام دوستان عزیز! 👋

در این پارت از آموزش جامع بک‌اند با پایتون، به اصول اولیه برنامه‌نویسی بک‌اند می‌پردازیم. این مباحث شامل مدیریت داده‌ها، کار با دیتابیس‌ها و اصول طراحی API می‌شود. 🚀

مدیریت داده‌ها و کار با دیتابیس‌ها 🗄️
یکی از مهم‌ترین بخش‌های بک‌اند، مدیریت داده‌هاست. این شامل ذخیره‌سازی، بازیابی، به‌روزرسانی و حذف داده‌ها از دیتابیس‌ها می‌شود. دیتابیس‌ها به دو نوع اصلی تقسیم می‌شوند: SQL و NoSQL.

1. دیتابیس‌های SQL:
- SQL (Structured Query Language) یک زبان استاندارد برای مدیریت و دسترسی به دیتابیس‌های رابطه‌ای است. دیتابیس‌های معروف SQL شامل MySQL، PostgreSQL و SQLite هستند.
- مثال اتصال به SQLite:

     import sqlite3

conn = sqlite3.connect('example.db')
cursor = conn.cursor()

cursor.execute('''CREATE TABLE users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)''')
conn.commit()
conn.close()

2. دیتابیس‌های NoSQL:
- دیتابیس‌های NoSQL برای مدیریت داده‌های بدون ساختار و مقیاس‌پذیری بالا طراحی شده‌اند. دیتابیس‌های معروف NoSQL شامل MongoDB، Cassandra و Redis هستند.
- مثال اتصال به MongoDB:

     from pymongo import MongoClient

client = MongoClient('mongodb://localhost:27017/')
db = client['example_db']
collection = db['users']

collection.insert_one({"name": "Ali", "age": 25})

اصول طراحی API 📡
API (Application Programming Interface) به برنامه‌ها اجازه می‌دهد با یکدیگر ارتباط برقرار کنند. APIها می‌توانند برای ارسال و دریافت داده‌ها بین سرور و کلاینت استفاده شوند.

1. RESTful API:
- REST (Representational State Transfer) یک سبک معماری برای طراحی APIهاست که از HTTP برای ارسال و دریافت داده‌ها استفاده می‌کند. عملیات اصلی در RESTful API شامل GET (دریافت داده‌ها)، POST (ایجاد داده‌ها)، PUT (به‌روزرسانی داده‌ها) و DELETE (حذف داده‌ها) است.
- مثال ایجاد یک RESTful API با Flask:

     from flask import Flask, jsonify, request

app = Flask(__name__)

@app.route('/users', methods=['GET'])
def get_users():
users = [{"name": "Ali", "age": 25}]
return jsonify(users)

@app.route('/users', methods=['POST'])
def add_user():
new_user = request.get_json()
return jsonify(new_user), 201

if __name__ == '__main__':
app.run(debug=True)

ادامه مسیر 🚀
شما اکنون با اصول اولیه برنامه‌نویسی بک‌اند آشنا شده‌اید. در پارت بعدی، به جزئیات بیشتر در زمینه ایجاد و مدیریت APIها و کار با فریمورک‌های پیشرفته‌تر می‌پردازیم.

🔗 [لینک کانال تلگرام]

#پایتون #بک_اند #SQL #NoSQL #API
👍42👏1
🥺یه بیلاخ زیر اینا بزنید 🥺

[اموزش پایتون]
👍72
جدیدترین کتابخانه‌های پایتون و به‌روزرسانی‌های مهم

سلام دوستان! می‌خواهیم به معرفی چند کتابخانه‌ی جدید و به‌روزرسانی‌های مهم کتابخانه‌های معروف پایتون بپردازیم. 📚🐍

کتابخانه‌های جدید:
1. PyScript:
این کتابخانه به شما اجازه می‌دهد که از جاوااسکریپت در پایتون استفاده کنید و اپلیکیشن‌های وب مدرن بسازید. PyScript با یکپارچگی ساده و پشتیبانی از بسته‌های پایتون، ابزاری قدرتمند برای توسعه‌دهندگان وب است.

2. DataWiz:
DataWiz یک کتابخانه‌ی تحلیل داده‌های جدید است که ابزارهای قدرتمندی برای تجسم داده‌ها و تحلیل‌های آماری فراهم می‌کند. این کتابخانه برای دانشمندان داده و تحلیل‌گران بسیار مفید است.

3. MLBoost:
MLBoost کتابخانه‌ای است که فرآیندهای یادگیری ماشین را بهینه می‌کند و ابزارهای مختلفی برای پیش‌پردازش داده‌ها، انتخاب ویژگی‌ها، و مدل‌سازی ارائه می‌دهد.

به‌روزرسانی‌های مهم:
1. NumPy 1.25:
کتابخانه‌ی معروف NumPy که برای محاسبات علمی و آرایه‌های چند‌بعدی استفاده می‌شود، به نسخه‌ی 1.25 به‌روزرسانی شده است. این نسخه شامل بهبودهای کارایی و رفع اشکالات مختلف است.

2. Pandas 2.1:
کتابخانه‌ی Pandas که برای تحلیل داده‌ها و ساختارهای داده‌ای استفاده می‌شود، نسخه‌ی 2.1 خود را منتشر کرده است. این نسخه شامل ویژگی‌های جدیدی مانند بهبود پشتیبانی از داده‌های زمان‌بندی شده و بهینه‌سازی‌های کارایی است.

3. Scikit-Learn 0.25:
کتابخانه‌ی Scikit-Learn که برای یادگیری ماشین و مدل‌سازی آماری استفاده می‌شود، به نسخه‌ی 0.25 به‌روزرسانی شده است. این نسخه شامل الگوریتم‌های جدید، بهبودهای کارایی و مستندسازی بهتر است.


[کانال ما]

(اموزش پایتون)

#Python #Programming #Libraries #DataScience #MachineLearning #Updates #PythonLibraries
👍3🔥1
👍1
Python3
[اموزش پایتون]
سلام دوستان! 🌟

امروز می‌خوام یک شبیه‌ساز ترمینال ساده با پایتون رو معرفی کنم که می‌تونید با استفاده از اون، دستورات مشابه اندروید رو توی ترمینال ویندوز اجرا کنید. این شبیه‌ساز به شما کمک می‌کنه تا بدون نیاز به دانش پیچیده، با دستورات ls، pwd، cd و exit کار کنید.

این شبیه‌ساز ساده، یک حلقه‌ی بی‌نهایت داره که دستورات وارد شده توسط کاربر رو تجزیه و تحلیل می‌کنه و متدهای مرتبط با اون دستورات رو اجرا می‌کنه. 🎉

امکانات:
- لیست کردن فایل‌ها (ls)
- نمایش مسیر فعلی (pwd)
- تغییر دایرکتوری (cd)
- خروج از شبیه‌ساز (exit)

این اسکریپت تنها برای آموزش و نمایش کاربردی استفاده می‌شه و توانایی اجرای واقعی کدهای اندروید رو نداره، ولی برای شروع و یادگیری عالیه! 🌱

برای اطلاعات بیشتر به لینک زیر مراجعه کنید. 👇

🔗 [لینک به کانال ما]

#پایتون #آموزش_پایتون #شبیه‌ساز #برنامه‌نویسی

هر سوالی دارید، حتماً بپرسید! 😊
👍1
Forwarded from گوربه
import os

class AndroidEmulator:
def __init__(self):
self.commands = {
"ls": self.ls,
"pwd": self.pwd,
"cd": self.cd,
"exit": self.exit
}
self.current_path = os.getcwd()

def run(self):
while True:
command = input(f"{self.current_path} $ ")
self.execute_command(command)

def execute_command(self, command):
parts = command.split()
if len(parts) == 0:
return

cmd = parts[0]
args = parts[1:]

if cmd in self.commands:
self.commands[cmd](args)
else:
print(f"Command '{cmd}' not found.")

def ls(self, args):
try:
for item in os.listdir(self.current_path):
print(item)
except Exception as e:
print(f"Error: {e}")

def pwd(self, args):
print(self.current_path)

def cd(self, args):
if len(args) != 1:
print("Usage: cd <directory>")
return

new_path = os.path.join(self.current_path, args[0])
if os.path.isdir(new_path):
self.current_path = new_path
else:
print(f"No such directory: {args[0]}")

def exit(self, args):
print("Exiting emulator.")
exit(0)

if __name__ == "__main__":
emulator = AndroidEmulator()
emulator.run()
👍1🔥1
پارت ۳: ایجاد اولین API با Flask

سلام دوستان! 👋

در این پارت از آموزش بک‌اند با پایتون، به ایجاد اولین API با استفاده از فریمورک Flask می‌پردازیم. Flask یکی از فریمورک‌های محبوب برای توسعه وب با پایتون است که به شما اجازه می‌دهد به سرعت یک API بسازید. 🚀

نصب و راه‌اندازی Flask 🛠️
ابتدا باید Flask را نصب کنید. برای این کار، از دستور زیر استفاده کنید:
pip install Flask

ایجاد اولین API 🌐
حالا یک فایل جدید به نام app.py ایجاد کرده و کد زیر را در آن قرار دهید:
from flask import Flask, jsonify, request

app = Flask(__name__)

# مسیر برای دریافت اطلاعات کاربران
@app.route('/users', methods=['GET'])
def get_users():
users = [{"name": "Ali", "age": 25}, {"name": "Sara", "age": 30}]
return jsonify(users)

# مسیر برای اضافه کردن کاربر جدید
@app.route('/users', methods=['POST'])
def add_user():
new_user = request.get_json()
return jsonify(new_user), 201

if __name__ == '__main__':
app.run(debug=True)

- در این کد، ابتدا یک نمونه از Flask ایجاد می‌کنیم.
- سپس دو مسیر (route) تعریف می‌کنیم: یکی برای دریافت لیست کاربران (GET /users) و دیگری برای اضافه کردن کاربر جدید (POST /users).

اجرای برنامه 🚀
برای اجرای برنامه، در خط فرمان دستور زیر را اجرا کنید:
python app.py

حالا می‌توانید به https://127.0.0.1:5000/users بروید و لیست کاربران را مشاهده کنید یا از ابزارهایی مانند Postman برای ارسال درخواست‌های POST به سرور استفاده کنید.

توضیح اصول RESTful API 📡
REST (Representational State Transfer) یک سبک معماری برای طراحی APIهاست که از پروتکل HTTP برای ارتباط بین سرور و کلاینت استفاده می‌کند. چهار عملیات اصلی در RESTful API وجود دارد:
- GET: برای دریافت داده‌ها از سرور.
- POST: برای ارسال داده‌های جدید به سرور.
- PUT: برای به‌روزرسانی داده‌های موجود در سرور.
- DELETE: برای حذف داده‌ها از سرور.

ادامه مسیر 🚀
در پارت بعدی، به توسعه API پیشرفته‌تر با Flask می‌پردازیم و اصول مدیریت درخواست‌ها، پاسخ‌ها، و احراز هویت را بررسی می‌کنیم.

🔗 لینک کانال تلگرام

#پایتون #بک_اند #Flask #API #برنامه_نویسی
👍4🔥1
پارت ۴: توسعه API پیشرفته با Flask

سلام دوستان! 👋

در این پارت از آموزش بک‌اند با پایتون، به توسعه یک API پیشرفته‌تر با استفاده از Flask می‌پردازیم. این شامل مدیریت درخواست‌ها، پاسخ‌ها، احراز هویت و مجوزها می‌شود. 🚀

مدیریت درخواست‌ها و پاسخ‌ها 🌐
برای مدیریت بهتر درخواست‌ها و پاسخ‌ها، می‌توانیم از امکانات پیشرفته Flask استفاده کنیم.

1. مدیریت درخواست‌ها با روش‌های HTTP:

   @app.route('/users/<int:id>', methods=['GET', 'PUT', 'DELETE'])
def manage_user(id):
if request.iss.onethod == 'GET':
user = get_user_by_id(id) # تابع فرضی برای دریافت کاربر
return jsonify(user)
elif request.iss.onethod == 'PUT':
data = request.get_json()
update_user(id, data) # تابع فرضی برای به‌روزرسانی کاربر
return jsonify({'message': 'User updated successfully'})
elif request.iss.onethod == 'DELETE':
delete_user(id) # تابع فرضی برای حذف کاربر
return jsonify({'message': 'User deleted successfully'})

کار با JSON و ارسال داده‌ها 📊
استفاده از JSON برای ارسال و دریافت داده‌ها در APIها بسیار رایج است.

2. مثال ارسال داده‌ها در قالب JSON:

   @app.route('/add_user', methods=['POST'])
def add_user():
data = request.get_json()
new_user = {"name": data['name'], "age": data['age']}
add_user_to_db(new_user) # تابع فرضی برای اضافه کردن کاربر به دیتابیس
return jsonify(new_user), 201

پیاده‌سازی احراز هویت و مجوزها 🔐
احراز هویت (Authentication) و مجوزها (Authorization) از مهم‌ترین بخش‌های امنیتی در توسعه APIها هستند.

3. احراز هویت ساده با استفاده از توکن:

   from functools import wraps

def token_required(f):
@wraps(f)
def decorated(*args, **kwargs):
token = request.headers.get('x-access-token')
if not token:
return jsonify({'message': 'Token is missing!'}), 403
try:
data = jwt.decode(token, app.config['SECRET_KEY'], algorithms=["HS256"])
current_user = get_user_by_id(data['id']) # تابع فرضی برای دریافت کاربر
except:
return jsonify({'message': 'Token is invalid!'}), 403
return f(current_user, *args, **kwargs)
return decorated

@app.route('/protected', methods=['GET'])
@token_required
def protected_route(current_user):
return jsonify({'message': 'This is only available for authenticated users', 'user': current_user})

تست و دیباگ کردن API 🔧
تست کردن API و اطمینان از عملکرد صحیح آن بسیار مهم است. برای این کار می‌توانید از ابزارهایی مانند Postman یا Insomnia استفاده کنید.

ادامه مسیر 🚀
در پارت بعدی، به مدیریت پایگاه داده با استفاده از SQLAlchemy می‌پردازیم و نحوه تعریف مدل‌های دیتابیس و ایجاد جداول را بررسی می‌کنیم.

🔗 لینک کانال تلگرام

#پایتون #بک_اند #Flask #API #احراز_هویت #برنامه_نویسی
👍5🔥1
بعد این سری آموزش بریم برای فرانت اند یا نه❓️
Anonymous Poll
67%
True👍
33%
False🚫
👍3🔥1