آموزش پایتون
Photo
جا داره که بگم به این راهها محدود نمیشه...
همیشه یه راه دیگهای وجود داره حتی وقتی وجود نداره😁
همیشه یه راه دیگهای وجود داره حتی وقتی وجود نداره😁
Hacking Secret Ciphers with Python.pdf
7 MB
📚«Hacking Secret Ciphers with Python»
📚کتاب "رمزنگاری سیفرهای مخفی با پایتون"
✅آیا به دنبال ورود به دنیای رمزنگاری و کدگذاری هستید؟
✅این کتاب یک راهنمای اختصاصی برای یادگیری تکنیکهای رمزنگاری با بهرهگیری از زبان برنامهنویسی پایتون است. با رویکردی عملی، خوانندگان با روشهای نوشتن و شکستن سیفرهای عرفی آشنا میشوند و مهارتهای خود را در این حوزه تقویت میکنند.
#معرفی_کتاب | #بوک_تایم | آموزش پایتون
📚کتاب "رمزنگاری سیفرهای مخفی با پایتون"
✅آیا به دنبال ورود به دنیای رمزنگاری و کدگذاری هستید؟
✅این کتاب یک راهنمای اختصاصی برای یادگیری تکنیکهای رمزنگاری با بهرهگیری از زبان برنامهنویسی پایتون است. با رویکردی عملی، خوانندگان با روشهای نوشتن و شکستن سیفرهای عرفی آشنا میشوند و مهارتهای خود را در این حوزه تقویت میکنند.
✅خلاصهای از کتاب
کتاب با تمرکز بر پروژهها و تمرینات جذاب، به شما کمک میکند تا به صورت گام به گام با مفاهیم رمزنگاری آشنا شوید و بتوانید کدهای مخفی خود را ایجاد و رمزگشایی کنید.
#معرفی_کتاب | #بوک_تایم | آموزش پایتون
این کد نحوه کار با ارجاعات ضعیف در پایتون را نشان میدهد. با استفاده از
#weakref | LearnPython
weakref، از حافظه به طور مؤثری استفاده کنید و از نشت حافظه جلوگیری نمایید. این رویکرد به مدیریت بهتر منابع در کدهای بزرگ و پیچیده کمک میکند.#weakref | LearnPython
🔆 ماژول
در زیر یک مثال کاربردی از استفاده از ماژول
🔅 توضیحات:
1. تعریف کلاس MyClass: این کلاس یک متغیر
2.ساخت یک نمونه از کلاس: شی
3.ایجاد ارجاع ضعیف: با استفاده از
4.دسترسی به شی از طریق ارجاع ضعیف: با استفاده از
5.حذف ارجاع قوی: با استفاده از
6.تلاش برای دسترسی پس از حذف: در نهایت، با بررسی اینکه آیا
🔅 خروجی برنامه:
این مثال نشان میدهد که چگونه میتوان از ارجاعهای ضعیف برای مدیریت حافظه و جلوگیری از نگهداری اشیا در حافظه زمانی که دیگر نیازی به آنها نیست، استفاده کرد.
#weakref | LearnPython
weakref در پایتون برای ایجاد ارجاعهای ضعیف (weak references) به اشیا استفاده میشود. ارجاعهای ضعیف به اشیا اجازه میدهند تا توسط garbage collector جمعآوری شوند، حتی اگر هنوز ارجاعهای ضعیفی به آنها وجود داشته باشد. این ماژول در مواقعی مفید است که میخواهید به یک شی اشاره کنید، اما نمیخواهید مانع از جمعآوری آن توسط garbage collector شوید.در زیر یک مثال کاربردی از استفاده از ماژول
weakref آورده شده است:import weakref
class MyClass:
def __init__(self, name):
self.name = name
def __del__(self):
print(f'{self.name} is being deleted')
# ایجاد یک نمونه از کلاس
obj = MyClass('MyObject')
# ایجاد یک ارجاع ضعیف به شی
weak_ref = weakref.ref(obj)
# دسترسی به شی از طریق ارجاع ضعیف
print(f'Object name: {weak_ref().name}')
# حذف ارجاع قوی به شی
del obj
# تلاش برای دسترسی به شی از طریق ارجاع ضعیف بعد از حذف
if weak_ref() is None:
print('The object has been deleted')
else:
print(f'Object name: {weak_ref().name}')
🔅 توضیحات:
1. تعریف کلاس MyClass: این کلاس یک متغیر
name در خود دارد و در زمان حذف شی، یک پیام را چاپ میکند.2.ساخت یک نمونه از کلاس: شی
obj از کلاس MyClass با نام 'MyObject' ساخته میشود.3.ایجاد ارجاع ضعیف: با استفاده از
weakref.ref(obj), یک ارجاع ضعیف به شی obj (که به طور مستقیم به آن دسترسی ندارد) ایجاد میشود.4.دسترسی به شی از طریق ارجاع ضعیف: با استفاده از
weak_ref(), نام شی از طریق ارجاع ضعیف چاپ میشود.5.حذف ارجاع قوی: با استفاده از
del obj, حذف ارجاع قوی به شی انجام شده و منجر به آمادهسازی آن برای حذف از حافظه میشود.6.تلاش برای دسترسی پس از حذف: در نهایت، با بررسی اینکه آیا
weak_ref() مقدار None را برمیگرداند یا خیر، مشخص میشود که آیا شی حذف شده است یا خیر. اگر ارجاع ضعیف متوجه شود که شی حذف شده است، پیام مربوط به آن چاپ میشود.🔅 خروجی برنامه:
Object name: MyObject
MyObject is being deleted
The object has been deleted
این مثال نشان میدهد که چگونه میتوان از ارجاعهای ضعیف برای مدیریت حافظه و جلوگیری از نگهداری اشیا در حافظه زمانی که دیگر نیازی به آنها نیست، استفاده کرد.
#weakref | LearnPython
میدونی PyOxidizer چیست؟
ماژول PyOxidizer ابزاری مبتنی بر Rust است که امکان ایجاد فایلهای اجرایی تکفایلی برای برنامههای پایتون را فراهم میکند. این فایلهای اجرایی مفسر پایتون، کتابخانههای استاندارد و منابع برنامه را در خود جای میدهند و اطمینان حاصل میکنند که برنامه در محیطهای مختلف به طور یکسان اجرا میشود. این ابزار بهویژه برای توزیع برنامههای پایتون به کاربران نهایی که ممکن است پایتون را نصب نکرده یا با ابزارهای بستهبندی پایتون آشنا نباشند، بسیار مفید است.
ویژگیهای کلیدی PyOxidizer
1. فایلهای اجرایی تکفایل: PyOxidizer میتواند مفسر پایتون، وابستگیها و کد برنامه را در یک فایل اجرایی واحد جمعآوری کند و نیاز به نصبهای جداگانه را از بین ببرد.
2. پشتیبانی چندپلتفرمی: این ابزار از ویندوز، macOS و لینوکس پشتیبانی میکند و برای توزیع در چندین پلتفرم بسیار انعطافپذیر است.
3. عملکرد بالا: با بارگذاری منابع به طور مستقیم از حافظه، فایلهای اجرایی PyOxidizer سریعتر راهاندازی میشوند و ماژولها را به طور کارآمدتری نسبت به برنامههای سنتی پایتون وارد میکنند.
4. پیکربندی قابل تنظیم: PyOxidizer از Starlark (زبان شبیه به پایتون) برای پیکربندی استفاده میکند و به توسعهدهندگان این امکان را میدهد که نحوه بستهبندی منابع و پیکربندی مفسر پایتون را تعریف کنند.
5. ادغام با Rust: ماژول PyOxidizer از Rust برای فرآیند ساخت خود استفاده میکند و ویژگیهای پیشرفتهای مانند لینکسازی استاتیک و مدیریت حافظه را امکانپذیر میسازد.
نحوه استفاده از PyOxidizer
1. نصب
PyOxidizer میتواند از طریق
همچنین میتوان آن را با استفاده از
2. ایجاد یک پروژه
برای ایجاد یک پروژه جدید PyOxidizer، دستور زیر را اجرا کنید:
این دستور یک فایل پیکربندی (
3. پیکربندی پروژه
فایل
- توزیع پایتون: نسخه و توزیع پایتون مورد استفاده را مشخص کنید.
- بستهبندی منابع: نحوه جاسازی منابع (مانند ماژولهای پایتون، فایلهای داده) در فایل اجرایی را تعریف کنید.
- نقطه ورودی: اسکریپت یا ماژول پایتونی را که هنگام راهاندازی فایل اجرایی اجرا میشود، تعیین کنید.
مثال پیکربندی:
4. ساخت فایل اجرایی
برای ساخت فایل اجرایی، دستور زیر را اجرا کنید:
این دستور یک فایل اجرایی مستقل در دایرکتوری
5. آزمایش فایل اجرایی
برای آزمایش برنامه خود، فایل اجرایی تولید شده را اجرا کنید:
این باید برنامه پایتون شما را به طور مورد انتظار راهاندازی کند.
مزایای PyOxidizer
- توزیع ساده: کاربران نیازی به نصب پایتون یا مدیریت وابستگیها ندارند.
- محیط یکسان: مفسر پایتون جاسازیشده رفتار یکسانی را در پلتفرمهای مختلف تضمین میکند.
- عملکرد: زمانهای راهاندازی سریعتر به دلیل بارگذاری منابع مبتنی بر حافظه.
محدودیتها
- اندازه فایل: فایلهای اجرایی میتوانند به دلیل مفسر پایتون و وابستگیهای جاسازیشده بزرگ باشند.
- پیچیدگی: پیکربندی PyOxidizer نیاز به آشنایی با Starlark و Rust دارد.
موارد استفاده
- برنامههای کاربر نهایی: توزیع برنامههای پایتون به کاربران غیر فنی.
- سیستمهای جاسازی شده: اجرای برنامههای پایتون در محیطهایی که پایتون نصب نشده است.
- ابزارهای DevOps: سادهسازی استقرار ابزارهای مبتنی بر پایتون در خطوط CI/CD.
نتیجهگیری
ماژول PyOxidizer یک راهحل قوی برای بستهبندی و توزیع برنامههای پایتون است. با جاسازی مفسر پایتون و وابستگیها در یک فایل اجرایی واحد، بسیاری از چالشهای مرتبط با توزیع برنامههای پایتون را از بین میبرد. در حالی که نیاز به تنظیمات اولیه دارد، مزایای آن از نظر عملکرد و سهولت استفاده، آن را به ابزاری ارزشمند برای توسعهدهندگان تبدیل میکند.
#pyoxidizer | #module | LearnPython
ماژول PyOxidizer ابزاری مبتنی بر Rust است که امکان ایجاد فایلهای اجرایی تکفایلی برای برنامههای پایتون را فراهم میکند. این فایلهای اجرایی مفسر پایتون، کتابخانههای استاندارد و منابع برنامه را در خود جای میدهند و اطمینان حاصل میکنند که برنامه در محیطهای مختلف به طور یکسان اجرا میشود. این ابزار بهویژه برای توزیع برنامههای پایتون به کاربران نهایی که ممکن است پایتون را نصب نکرده یا با ابزارهای بستهبندی پایتون آشنا نباشند، بسیار مفید است.
ویژگیهای کلیدی PyOxidizer
1. فایلهای اجرایی تکفایل: PyOxidizer میتواند مفسر پایتون، وابستگیها و کد برنامه را در یک فایل اجرایی واحد جمعآوری کند و نیاز به نصبهای جداگانه را از بین ببرد.
2. پشتیبانی چندپلتفرمی: این ابزار از ویندوز، macOS و لینوکس پشتیبانی میکند و برای توزیع در چندین پلتفرم بسیار انعطافپذیر است.
3. عملکرد بالا: با بارگذاری منابع به طور مستقیم از حافظه، فایلهای اجرایی PyOxidizer سریعتر راهاندازی میشوند و ماژولها را به طور کارآمدتری نسبت به برنامههای سنتی پایتون وارد میکنند.
4. پیکربندی قابل تنظیم: PyOxidizer از Starlark (زبان شبیه به پایتون) برای پیکربندی استفاده میکند و به توسعهدهندگان این امکان را میدهد که نحوه بستهبندی منابع و پیکربندی مفسر پایتون را تعریف کنند.
5. ادغام با Rust: ماژول PyOxidizer از Rust برای فرآیند ساخت خود استفاده میکند و ویژگیهای پیشرفتهای مانند لینکسازی استاتیک و مدیریت حافظه را امکانپذیر میسازد.
نحوه استفاده از PyOxidizer
1. نصب
PyOxidizer میتواند از طریق
pip یا به عنوان یک crate در Rust نصب شود:pip install pyoxidizer
همچنین میتوان آن را با استفاده از
cargo در Rust نصب کرد:cargo install pyoxidizer
2. ایجاد یک پروژه
برای ایجاد یک پروژه جدید PyOxidizer، دستور زیر را اجرا کنید:
pyoxidizer init my_project
این دستور یک فایل پیکربندی (
pyoxidizer.bzl) و یک ساختار پروژه پایه ایجاد میکند.3. پیکربندی پروژه
فایل
pyoxidizer.bzl نحوه ساخت و بستهبندی برنامه را تعریف میکند. تنظیمات کلیدی شامل:- توزیع پایتون: نسخه و توزیع پایتون مورد استفاده را مشخص کنید.
- بستهبندی منابع: نحوه جاسازی منابع (مانند ماژولهای پایتون، فایلهای داده) در فایل اجرایی را تعریف کنید.
- نقطه ورودی: اسکریپت یا ماژول پایتونی را که هنگام راهاندازی فایل اجرایی اجرا میشود، تعیین کنید.
مثال پیکربندی:
def make_exe():
dist = default_python_distribution()
policy = dist.make_python_packaging_policy()
python_config = dist.make_python_interpreter_config()
python_config.run_module = "my_app" # نقطه ورودی
exe = dist.to_python_executable(
name="my_app",
packaging_policy=policy,
config=python_config,
)
return exe
4. ساخت فایل اجرایی
برای ساخت فایل اجرایی، دستور زیر را اجرا کنید:
pyoxidizer build
این دستور یک فایل اجرایی مستقل در دایرکتوری
build ایجاد میکند.5. آزمایش فایل اجرایی
برای آزمایش برنامه خود، فایل اجرایی تولید شده را اجرا کنید:
./build/my_app
این باید برنامه پایتون شما را به طور مورد انتظار راهاندازی کند.
مزایای PyOxidizer
- توزیع ساده: کاربران نیازی به نصب پایتون یا مدیریت وابستگیها ندارند.
- محیط یکسان: مفسر پایتون جاسازیشده رفتار یکسانی را در پلتفرمهای مختلف تضمین میکند.
- عملکرد: زمانهای راهاندازی سریعتر به دلیل بارگذاری منابع مبتنی بر حافظه.
محدودیتها
- اندازه فایل: فایلهای اجرایی میتوانند به دلیل مفسر پایتون و وابستگیهای جاسازیشده بزرگ باشند.
- پیچیدگی: پیکربندی PyOxidizer نیاز به آشنایی با Starlark و Rust دارد.
موارد استفاده
- برنامههای کاربر نهایی: توزیع برنامههای پایتون به کاربران غیر فنی.
- سیستمهای جاسازی شده: اجرای برنامههای پایتون در محیطهایی که پایتون نصب نشده است.
- ابزارهای DevOps: سادهسازی استقرار ابزارهای مبتنی بر پایتون در خطوط CI/CD.
نتیجهگیری
ماژول PyOxidizer یک راهحل قوی برای بستهبندی و توزیع برنامههای پایتون است. با جاسازی مفسر پایتون و وابستگیها در یک فایل اجرایی واحد، بسیاری از چالشهای مرتبط با توزیع برنامههای پایتون را از بین میبرد. در حالی که نیاز به تنظیمات اولیه دارد، مزایای آن از نظر عملکرد و سهولت استفاده، آن را به ابزاری ارزشمند برای توسعهدهندگان تبدیل میکند.
#pyoxidizer | #module | LearnPython
Telegram
آموزش پایتون
ارتباط با ما:
@learnpythonicyBot
لینک گروه چت:
https://t.me/learnpythonicychat
لینک چنل ایتا:
https://eitaa.com/learnpythonicy
@learnpythonicyBot
لینک گروه چت:
https://t.me/learnpythonicychat
لینک چنل ایتا:
https://eitaa.com/learnpythonicy
امروز قراره درباره ماژول pathlib در پایتون صحبت کنیم!
ماژول
🔅 توضیح کوتاه درباره ماژول pathlib:
ماژول
🔅 مثال کاربردی:
در این مثال، میخواهیم یک فایل متنی را ایجاد کنیم، محتوایی در آن بنویسیم و سپس آن را بخوانیم.
🔅 توضیحات:
1. وارد کردن ماژول pathlib:
- ماژول
2. تعریف مسیر فایل:
- یک شیء از کلاس
3. ایجاد فایل و نوشتن محتوا در آن:
- با استفاده از متد write_text، یک فایل متنی ایجاد کرده و محتوای مشخص شده را در آن مینویسیم.
4. خواندن محتوا از فایل:
- با استفاده از متد read_text، محتوای فایل را میخوانیم و آن را چاپ میکنیم.
5. بررسی وجود فایل:
- با استفاده از متد exists، بررسی میکنیم که آیا فایل وجود دارد یا نه و پیامی را چاپ میکنیم.
6. حذف فایل:
- با استفاده از متد unlink، فایل را حذف میکنیم و پیامی را چاپ میکنیم.
این مثال نشاندهندهٔ توانمندیهای ماژول pathlib و نحوه استفاده از آن برای انجام عملیات مختلف روی فایلها و مسیرها است.
#pathlib | #module | learnpythonicy
ماژول
pathlib در پایتون برای کار با مسیرها و فایلها استفاده میشود و با استفاده از آن میتوانید عملیات مختلفی روی فایلها و دایرکتوریها انجام دهید. این ماژول در پایتون 3.4 معرفی شد و به دلیل رابط کاربری راحت و توانمندیهای گسترده، بسیار محبوب است.🔅 توضیح کوتاه درباره ماژول pathlib:
ماژول
pathlib یک رابط شیءگرا برای کار با سیستم فایل فراهم میکند. این ماژول اجازه میدهد تا با مسیرهای فایل به صورت اشیاء کار کنید و عملیات مختلفی مانند خواندن، نوشتن، کپی، حذف و ... را به سادگی انجام دهید.🔅 مثال کاربردی:
در این مثال، میخواهیم یک فایل متنی را ایجاد کنیم، محتوایی در آن بنویسیم و سپس آن را بخوانیم.
from pathlib import Path
# تعریف مسیر فایل
file_path = Path("example.txt")
# ایجاد فایل و نوشتن محتوا در آن
file_path.write_text("Hello, this is a test file created with pathlib!")
# خواندن محتوا از فایل
content = file_path.read_text()
print("File Content:", content)
# بررسی اینکه آیا فایل وجود دارد یا نه
if file_path.exists():
print("The file exists.")
else:
print("The file does not exist.")
# حذف فایل
file_path.unlink()
print("The file has been deleted.")
🔅 توضیحات:
1. وارد کردن ماژول pathlib:
from pathlib import Path
- ماژول
pathlib را وارد میکنیم و از کلاس Path آن استفاده میکنیم.2. تعریف مسیر فایل:
file_path = Path("example.txt")
- یک شیء از کلاس
Path ایجاد میکنیم که نشاندهنده مسیر فایل example.txt است.3. ایجاد فایل و نوشتن محتوا در آن:
file_path.write_text("Hello, this is a test file created with pathlib!")
- با استفاده از متد write_text، یک فایل متنی ایجاد کرده و محتوای مشخص شده را در آن مینویسیم.
4. خواندن محتوا از فایل:
content = file_path.read_text()
print("File Content:", content)
- با استفاده از متد read_text، محتوای فایل را میخوانیم و آن را چاپ میکنیم.
5. بررسی وجود فایل:
if file_path.exists():
print("The file exists.")
else:
print("The file does not exist.")
- با استفاده از متد exists، بررسی میکنیم که آیا فایل وجود دارد یا نه و پیامی را چاپ میکنیم.
6. حذف فایل:
file_path.unlink()
print("The file has been deleted.")
- با استفاده از متد unlink، فایل را حذف میکنیم و پیامی را چاپ میکنیم.
این مثال نشاندهندهٔ توانمندیهای ماژول pathlib و نحوه استفاده از آن برای انجام عملیات مختلف روی فایلها و مسیرها است.
#pathlib | #module | learnpythonicy
چکلیستی کامل از دستورات و متدهای مربوط به لیستها (Lists) در پایتون
1. ایجاد لیست
- ایجاد یک لیست خالی:
- ایجاد یک لیست با مقادیر اولیه:
---
2. اضافه کردن عناصر به لیست
- اضافه کردن یک عنصر به انتهای لیست با
- اضافه کردن چند عنصر به انتهای لیست با
- اضافه کردن یک عنصر در موقعیت مشخص با
---
3. حذف عناصر از لیست
- حذف یک عنصر بر اساس مقدار با
- حذف یک عنصر بر اساس ایندکس با
- حذف آخرین عنصر لیست با
- حذف همه عناصر لیست با
---
4. دسترسی به عناصر لیست
- دسترسی به عنصر بر اساس ایندکس:
- دسترسی به آخرین عنصر:
- دسترسی به یک بازه از عناصر (Slicing):
---
5. تغییر عناصر لیست
- تغییر مقدار یک عنصر:
- تغییر مقدار چند عنصر با Slicing:
---
6. جستوجو در لیست
- بررسی وجود یک عنصر در لیست با
- پیدا کردن ایندکس یک عنصر با
---
7. مرتبسازی لیست
- مرتبسازی صعودی لیست با
- مرتبسازی نزولی لیست با
- برعکس کردن ترتیب لیست با
---
8. کپی کردن لیست
- ایجاد یک کپی سطحی از لیست با
- ایجاد یک کپی سطحی با Slicing:
---
9. عملیاتهای دیگر
- اندازه لیست (تعداد عناصر) با
- شمارش تعداد تکرار یک عنصر با
- ترکیب دو لیست با عملگر
- تکرار لیست با عملگر
---
10. لیستهای تو در تو (Nested Lists)
- ایجاد یک لیست تو در تو:
- دسترسی به عناصر لیست تو در تو:
---
11. List Comprehension
- ایجاد لیست جدید با List Comprehension:
- فیلتر کردن عناصر با List Comprehension:
---
لیستها در پایتون یکی از پرکاربردترین ساختارهای داده هستند و با استفاده از دستورات و متدهای بالا میتوانید بهراحتی با آنها کار کنید. این چکلیست به شما کمک میکند تا عملیاتهای رایج روی لیستها را بهخاطر بسپارید و از آنها استفاده کنید.
#list | learnpythonicy | #بدانیم
1. ایجاد لیست
- ایجاد یک لیست خالی:
my_list = []
- ایجاد یک لیست با مقادیر اولیه:
my_list = [1, 2, 3, 4, 5]
---
2. اضافه کردن عناصر به لیست
- اضافه کردن یک عنصر به انتهای لیست با
append():my_list.append(6)
- اضافه کردن چند عنصر به انتهای لیست با
extend():my_list.extend([7, 8, 9])
- اضافه کردن یک عنصر در موقعیت مشخص با
insert():my_list.insert(0, 0) # اضافه کردن عدد 0 در ابتدای لیست
---
3. حذف عناصر از لیست
- حذف یک عنصر بر اساس مقدار با
remove():my_list.remove(3) # اولین عنصر با مقدار 3 را حذف میکند
- حذف یک عنصر بر اساس ایندکس با
pop():my_list.pop(2) # عنصر در ایندکس 2 را حذف میکند
- حذف آخرین عنصر لیست با
pop() (بدون آرگومان):my_list.pop()
- حذف همه عناصر لیست با
clear():my_list.clear()
---
4. دسترسی به عناصر لیست
- دسترسی به عنصر بر اساس ایندکس:
first_element = my_list[0]
- دسترسی به آخرین عنصر:
last_element = my_list[-1]
- دسترسی به یک بازه از عناصر (Slicing):
sub_list = my_list[1:4] # عناصر از ایندکس 1 تا 3
---
5. تغییر عناصر لیست
- تغییر مقدار یک عنصر:
my_list[2] = 10 # مقدار عنصر در ایندکس 2 را به 10 تغییر میدهد
- تغییر مقدار چند عنصر با Slicing:
my_list[1:3] = [20, 30] # عناصر در ایندکس 1 و 2 را تغییر میدهد
---
6. جستوجو در لیست
- بررسی وجود یک عنصر در لیست با
in:if 5 in my_list:
print("5 در لیست وجود دارد")
- پیدا کردن ایندکس یک عنصر با
index():index = my_list.index(4) # ایندکس اولین عنصر با مقدار 4 را برمیگرداند
---
7. مرتبسازی لیست
- مرتبسازی صعودی لیست با
sort():my_list.sort()
- مرتبسازی نزولی لیست با
sort(reverse=True):my_list.sort(reverse=True)
- برعکس کردن ترتیب لیست با
reverse():my_list.reverse()
---
8. کپی کردن لیست
- ایجاد یک کپی سطحی از لیست با
copy():new_list = my_list.copy()
- ایجاد یک کپی سطحی با Slicing:
new_list = my_list[:]
---
9. عملیاتهای دیگر
- اندازه لیست (تعداد عناصر) با
len():length = len(my_list)
- شمارش تعداد تکرار یک عنصر با
count():count = my_list.count(5) # تعداد تکرار عدد 5 در لیست
- ترکیب دو لیست با عملگر
+:combined_list = my_list + [10, 11, 12]
- تکرار لیست با عملگر
*:repeated_list = my_list * 2 # لیست را دو بار تکرار میکند
---
10. لیستهای تو در تو (Nested Lists)
- ایجاد یک لیست تو در تو:
nested_list = [[1, 2], [3, 4], [5, 6]]
- دسترسی به عناصر لیست تو در تو:
element = nested_list[1][0] # مقدار 3 را برمیگرداند
---
11. List Comprehension
- ایجاد لیست جدید با List Comprehension:
squares = [x**2 for x in range(10)]
- فیلتر کردن عناصر با List Comprehension:
even_numbers = [x for x in range(10) if x % 2 == 0]
---
لیستها در پایتون یکی از پرکاربردترین ساختارهای داده هستند و با استفاده از دستورات و متدهای بالا میتوانید بهراحتی با آنها کار کنید. این چکلیست به شما کمک میکند تا عملیاتهای رایج روی لیستها را بهخاطر بسپارید و از آنها استفاده کنید.
#list | learnpythonicy | #بدانیم
یک اسکریپت کوتاه با استفاده از ماژول
ماژول
لیست
میتوانید این اسکریپت را در برنامههای خود برای نمایش پیامهای الهامبخش استفاده کنید. و یا حتی آن را به یک ربات تلگرام یا وبسایت اضافه کنید تا هر روز یک شعار جدید نمایش دهد!
این اسکریپت کوچک اما قدرتمند است و میتواند ایدههای خلاقانهتری را برای شما الهام بخشد! 🚀
#random | #module | learnpythonicy
random که یک تولید کننده شعار تصادفی (Random Quote Generator) ایجاد میکند. ماژول
random: از تابع random.choice() برای انتخاب یک عنصر تصادفی از لیست استفاده میشود.لیست
quotes: میتوانید شعارهای خود را به این لیست اضافه کنید.میتوانید این اسکریپت را در برنامههای خود برای نمایش پیامهای الهامبخش استفاده کنید. و یا حتی آن را به یک ربات تلگرام یا وبسایت اضافه کنید تا هر روز یک شعار جدید نمایش دهد!
این اسکریپت کوچک اما قدرتمند است و میتواند ایدههای خلاقانهتری را برای شما الهام بخشد! 🚀
#random | #module | learnpythonicy
📊 تولید نمودار شمعی با Python 📊
در این کد، ما از کتابخانههای
- pandas: برای مدیریت دادهها.
- mplfinance: برای ترسیم نمودارهای مالی.
این کد برای تحلیل تکنیکال و بررسی روند قیمتها در بورس و بازارهای مالی بسیار مفید است.
استفاده از این کد به شما امکان میدهد تا نمودارهای شمعی جذاب و کاربردی ایجاد کنید و به تحلیل دادههای مالی خود بپردازید. 📈💡
در این کد، ما از کتابخانههای
pandas و mplfinance برای ایجاد نمودار شمعی (Candlestick Chart) استفاده میکنیم. دادههای قیمت باز، بالا، پایین و بسته روزانه را تعریف میکنیم و سپس با استفاده از mplfinance نمودار شمعی را نمایش میدهیم.- pandas: برای مدیریت دادهها.
- mplfinance: برای ترسیم نمودارهای مالی.
این کد برای تحلیل تکنیکال و بررسی روند قیمتها در بورس و بازارهای مالی بسیار مفید است.
استفاده از این کد به شما امکان میدهد تا نمودارهای شمعی جذاب و کاربردی ایجاد کنید و به تحلیل دادههای مالی خود بپردازید. 📈💡
🔍 تشخیص URLهای فیشینگ با Python 🔍
در این کد، با استفاده از ماژول
با استفاده از این کد، میتوانید URLهای مشکوک به فیشینگ را به راحتی تشخیص دهید و از خطرات احتمالی جلوگیری کنید. 🌐🛡
#re |#phishing | learnpythonicy
در این کد، با استفاده از ماژول
re در Python، یک تابع ساده ایجاد کردهایم که URLهای مشکوک به فیشینگ را تشخیص میدهد. این تابع بر اساس الگوهای رایج در URLهای فیشینگ، مانند استفاده از IP به جای دامنه، وجود کاراکتر @ در URL، و استفاده از سرویسهای کوتاهکننده URL، این URLs را بررسی میکند.import re
def is_phishing(url):
phishing_patterns = [
r'https?://([^/]+)@',
r'https?://\d+\.\d+\.\d+\.\d+',
r'https?://(?:www\.)?([^/]+\.)?(paypal|bank|amazon)\.com',
r'https?://bit\.ly/',
]
for pattern in phishing_patterns:
if re.search(pattern, url, re.IGNORECASE):
return True
return False
user_url = input("Please enter the URL: ")
if is_phishing(user_url):
print("⚠️ This URL might be phishing! Be cautious.")
else:
print("✅ This URL seems safe.")
با استفاده از این کد، میتوانید URLهای مشکوک به فیشینگ را به راحتی تشخیص دهید و از خطرات احتمالی جلوگیری کنید. 🌐🛡
#re |#phishing | learnpythonicy
دریافت IP و Hostname سیستم با استفاده از پایتون با ماژول socket
ماژول
این مثال ساده نشان میدهد که چگونه میتوانید با استفاده از پایتون، Hostname و IP سیستم خود را دریافت کنید. این اطلاعات میتواند برای کارهای شبکهای، عیبیابی و مدیریت سیستم مفید باشد. 😊
#socket | #module | learnpythonicy
ماژول
socket برای کار با شبکه و ارتباطات استفاده میشود. در این مثال، از آن برای دریافت اطلاعات شبکه سیستم استفاده میکنیم. تابع gethostname نام میزبان (Hostname) سیستم را برمیگرداند. تابع gethostbyname آدرس IP مربوط به یک Hostname را برمیگرداند. در اینجا، Hostname سیستم خود را به آن میدهیم تا IP سیستم را دریافت کنیم. این مثال ساده نشان میدهد که چگونه میتوانید با استفاده از پایتون، Hostname و IP سیستم خود را دریافت کنید. این اطلاعات میتواند برای کارهای شبکهای، عیبیابی و مدیریت سیستم مفید باشد. 😊
#socket | #module | learnpythonicy
👍1
🔄 استفاده از namedtuple در Python 🔄
در این کد، با استفاده از ماژول
- سهولت دسترسی: با استفاده از
- خوانایی کد: استفاده از
این روش برای ذخیره و دسترسی به دادههای شخصی بسیار کاربردی است و میتواند در پروژههای شما مفید باشد! 🌟
#collections | #namedtouple | #module | learnpythonicy
در این کد، با استفاده از ماژول
collections و تابع namedtuple، یک نوع دادهای سفارشی برای نگهداری اطلاعات شخص ایجاد میکنیم. این روش اجازه میدهد تا به عناصر دادهای با استفاده از نام آنها دسترسی داشته باشیم.- سهولت دسترسی: با استفاده از
namedtuple، میتوانید به عناصر دادهای با استفاده از نام آنها دسترسی پیدا کنید.- خوانایی کد: استفاده از
namedtuple کد شما را خواناتر و قابل فهمتر میکند.این روش برای ذخیره و دسترسی به دادههای شخصی بسیار کاربردی است و میتواند در پروژههای شما مفید باشد! 🌟
#collections | #namedtouple | #module | learnpythonicy
"چرا پایتون یاد بگیریم؟ چون آینده در دستان شماست! 💻✨"
یادگیری پایتون فقط یک مهارت نیست، یک سوپرپاور است! 🚀
چه بخواهید در دنیای هوش مصنوعی قدم بگذارید، چه بخواهید وبسایتهای قدرتمند بسازید یا حتی دادههای بزرگ را تحلیل کنید، پایتون همیشه همراه شماست.
- پایتون ساده است: حتی اگر تازهکار هستید، پایتون با syntax سادهاش شما را به یک برنامهنویس حرفهای تبدیل میکند.
- پایتون قدرتمند است: از شرکتهای بزرگ مثل گوگل و ناسا تا استارتآپهای نوپا، همه از پایتون استفاده میکنند.
- پایتون آیندهدار است: با رشد فناوریهایی مثل هوش مصنوعی، یادگیری ماشین و علم داده، پایتون به یکی از محبوبترین زبانهای برنامهنویسی دنیا تبدیل شده است.
یادگیری پایتون یعنی:
🔹 ساختن آیندهای بهتر برای خودتان.
🔹 دسترسی به فرصتهای شغلی فوقالعاده.
🔹 تبدیل ایدههایتان به واقعیت!
پس همین امروز شروع کنید. حتی اگر فقط روزی ۱۰ دقیقه وقت بگذارید، یک سال دیگر به خودتان افتخار خواهید کرد. 💪
یادت باشه:
"هر برنامهنویس بزرگی، روزی یک تازهکار بود."
پس نترسید، شروع کنید و ادامه دهید! 🐍🔥
Learnpythonicy
یادگیری پایتون فقط یک مهارت نیست، یک سوپرپاور است! 🚀
چه بخواهید در دنیای هوش مصنوعی قدم بگذارید، چه بخواهید وبسایتهای قدرتمند بسازید یا حتی دادههای بزرگ را تحلیل کنید، پایتون همیشه همراه شماست.
- پایتون ساده است: حتی اگر تازهکار هستید، پایتون با syntax سادهاش شما را به یک برنامهنویس حرفهای تبدیل میکند.
- پایتون قدرتمند است: از شرکتهای بزرگ مثل گوگل و ناسا تا استارتآپهای نوپا، همه از پایتون استفاده میکنند.
- پایتون آیندهدار است: با رشد فناوریهایی مثل هوش مصنوعی، یادگیری ماشین و علم داده، پایتون به یکی از محبوبترین زبانهای برنامهنویسی دنیا تبدیل شده است.
یادگیری پایتون یعنی:
🔹 ساختن آیندهای بهتر برای خودتان.
🔹 دسترسی به فرصتهای شغلی فوقالعاده.
🔹 تبدیل ایدههایتان به واقعیت!
پس همین امروز شروع کنید. حتی اگر فقط روزی ۱۰ دقیقه وقت بگذارید، یک سال دیگر به خودتان افتخار خواهید کرد. 💪
یادت باشه:
"هر برنامهنویس بزرگی، روزی یک تازهکار بود."
پس نترسید، شروع کنید و ادامه دهید! 🐍🔥
Learnpythonicy
👨💻3
Dataclasses Module In Python
✨ با
dataclass در پایتون، کدنویسی تمیز و حرفهای رو تجربه کن!کد ارائه شده یک
dataclass در پایتون را تعریف و استفاده کرده است. در این کد، یک کلاس به نام Product با سه فیلد name، price و quantity تعریف شده است. سپس یک نمونه از این کلاس با نام p1 ساخته شده و مقادیر مربوط به نام، قیمت و مقدار آن در دسترس قرار گرفته و چاپ شده است. خروجی این دستورات نشاندهنده نام و قیمت محصول است.#class | #dataclasses | learnpythonicy
🤓3