آموزش پایتون
88 subscribers
281 photos
21 videos
81 files
178 links
ارتباط با ما:
@learnpythonicyBot

لینک گروه چت:
https://t.me/learnpythonicychat

لینک چنل ایتا:
https://eitaa.com/learnpythonicy
Download Telegram
حالتون چطوره🌱
🤓3
چک‌لیستی کامل از دستورات و متدهای مربوط به لیست‌ها (Lists) در پایتون


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 که یک تولید کننده شعار تصادفی (Random Quote Generator) ایجاد می‌کند.

ماژول random: از تابع random.choice() برای انتخاب یک عنصر تصادفی از لیست استفاده می‌شود.
لیست quotes: می‌توانید شعارهای خود را به این لیست اضافه کنید.

می‌توانید این اسکریپت را در برنامه‌های خود برای نمایش پیام‌های الهام‌بخش استفاده کنید. و یا حتی آن را به یک ربات تلگرام یا وب‌سایت اضافه کنید تا هر روز یک شعار جدید نمایش دهد!

این اسکریپت کوچک اما قدرتمند است و می‌تواند ایده‌های خلاقانه‌تری را برای شما الهام بخشد! 🚀

#random | #module | learnpythonicy
اگر ایده ای برای پست‌های بعدی دارید با ما به اشتراک بزارید❤️🙏

راه ارتباطی:
@learnpythonicyBot
📊 تولید نمودار شمعی با Python 📊

در این کد، ما از کتابخانه‌های pandas و mplfinance برای ایجاد نمودار شمعی (Candlestick Chart) استفاده می‌کنیم. داده‌های قیمت باز، بالا، پایین و بسته روزانه را تعریف می‌کنیم و سپس با استفاده از mplfinance نمودار شمعی را نمایش می‌دهیم.

- pandas: برای مدیریت داده‌ها.
- mplfinance: برای ترسیم نمودارهای مالی.

این کد برای تحلیل تکنیکال و بررسی روند قیمت‌ها در بورس و بازارهای مالی بسیار مفید است.

استفاده از این کد به شما امکان می‌دهد تا نمودارهای شمعی جذاب و کاربردی ایجاد کنید و به تحلیل داده‌های مالی خود بپردازید. 📈💡
🔍 تشخیص URL‌های فیشینگ با Python 🔍

در این کد، با استفاده از ماژول 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
اگر ایده ای برای پست‌های بعدی دارید با ما به اشتراک بزارید❤️🙏

راه ارتباطی:
@learnpythonicyBot
دریافت IP و Hostname سیستم با استفاده از پایتون با ماژول‌ socket

ماژول socket برای کار با شبکه و ارتباطات استفاده می‌شود. در این مثال، از آن برای دریافت اطلاعات شبکه سیستم استفاده می‌کنیم. تابع gethostname نام میزبان (Hostname) سیستم را برمی‌گرداند. تابع gethostbyname آدرس IP مربوط به یک Hostname را برمی‌گرداند. در اینجا، Hostname سیستم خود را به آن می‌دهیم تا IP سیستم را دریافت کنیم.

این مثال ساده نشان می‌دهد که چگونه می‌توانید با استفاده از پایتون، Hostname و IP سیستم خود را دریافت کنید. این اطلاعات می‌تواند برای کارهای شبکه‌ای، عیب‌یابی و مدیریت سیستم مفید باشد. 😊

#socket | #module | learnpythonicy
👍1
🔄 استفاده از namedtuple در Python 🔄

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

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

این روش برای ذخیره و دسترسی به داده‌های شخصی بسیار کاربردی است و می‌تواند در پروژه‌های شما مفید باشد! 🌟

#collections | #namedtouple | #module | learnpythonicy
"چرا پایتون یاد بگیریم؟ چون آینده در دستان شماست! 💻"


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

- پایتون ساده است: حتی اگر تازه‌کار هستید، پایتون با syntax ساده‌اش شما را به یک برنامه‌نویس حرفه‌ای تبدیل می‌کند.
- پایتون قدرتمند است: از شرکت‌های بزرگ مثل گوگل و ناسا تا استارت‌آپ‌های نوپا، همه از پایتون استفاده می‌کنند.
- پایتون آینده‌دار است: با رشد فناوری‌هایی مثل هوش مصنوعی، یادگیری ماشین و علم داده، پایتون به یکی از محبوب‌ترین زبان‌های برنامه‌نویسی دنیا تبدیل شده است.

یادگیری پایتون یعنی:
🔹 ساختن آینده‌ای بهتر برای خودتان.
🔹 دسترسی به فرصت‌های شغلی فوق‌العاده.
🔹 تبدیل ایده‌هایتان به واقعیت!

پس همین امروز شروع کنید. حتی اگر فقط روزی ۱۰ دقیقه وقت بگذارید، یک سال دیگر به خودتان افتخار خواهید کرد. 💪

یادت باشه:
"هر برنامه‌نویس بزرگی، روزی یک تازه‌کار بود."
پس نترسید، شروع کنید و ادامه دهید! 🐍🔥

Learnpythonicy
👨‍💻3
Dataclasses Module In Python


با dataclass در پایتون، کدنویسی تمیز و حرفه‌ای رو تجربه کن!

کد ارائه شده یک dataclass در پایتون را تعریف و استفاده کرده است. در این کد، یک کلاس به نام Product با سه فیلد name، price و quantity تعریف شده است. سپس یک نمونه از این کلاس با نام p1 ساخته شده و مقادیر مربوط به نام، قیمت و مقدار آن در دسترس قرار گرفته و چاپ شده است. خروجی این دستورات نشان‌دهنده نام و قیمت محصول است.

#class | #dataclasses | learnpythonicy
🤓3
اگر ایده ای برای پست‌های بعدی دارید با ما به اشتراک بزارید❤️🙏

راه ارتباطی:
@learnpythonicyBot
🍓2
با استفاده از کتابخانه Rich، این کد یک نمای درختی زیبا از فولدرها و زیرفولدرها ایجاد می‌کند.
ابزاری عالی برای نمایش داده‌های سلسله‌مراتبی به شکلی تمیز و خوانا. 🖥

ماژول Rich خروجی ترمینال را زیبا و خوانا می‌کند. همچنین ابزاری ایده‌آل برای نمایش ساختار فایل‌ها، پروژه‌ها یا هر داده سلسله‌مراتبی.

#rich | #tree | #console | learnpythonicy
با استفاده از کتابخانه Rich در پایتون، می‌توانید متن‌های رنگی، فرمت‌شده و حتی ایموجی‌ها را در ترمینال نمایش دهید!
🌈 این کد یک مثال ساده از نحوه استفاده از Rich برای ایجاد متن‌های پررنگ، زیرخط‌دار، ایتالیک و ایموجی‌های جذاب است. 🖥️

#rich | #console | learnpythonicy
🍓2
📁 مدیریت فایل‌ها با استفاده از ماژول pathlib در Python 📁

در این کد، با استفاده از ماژول pathlib در Python، عملیات مختلفی روی فایل‌ها و مسیرها انجام می‌دهیم. این شامل ایجاد فایل، نوشتن و خواندن از فایل، لیست کردن فایل‌ها در دایرکتوری، تغییر نام فایل و حذف فایل می‌شود. pathlib یک رابط شیءگرا برای کار با سیستم فایل فراهم می‌کند که کار با مسیرها را آسان و کارآمد می‌کند.

خروجی:
Current directory: G:\V.S.Code-PY\AreFull
New file path: G:\V.S.Code-PY\AreFull\test_file.txt
File does not exist. Creating file...
File content: Hello, this is a test
file!

Files in the current directory:
learnpythonicy
test_file.txt

File renamed to renamed_file.txt
File renamed_file.txt deleted.
PS G:\V.S.Code-PY\AreFull>


#pathlib | learnpythonicy
👍1🤓1
یکی از ماژول‌های جدید و جذاب پایتون، Textual است. این ماژول برای ساخت رابط‌های کاربری (UI) مبتنی بر متن در ترمینال استفاده می‌شود و بسیار قدرتمند و ساده است.
در اینجا یک مثال کوتاه و ساده از ساخت یک برنامه ساده با Textual آورده شده است:

---

نصب Textual
قبل از شروع، مطمئن شوید Textual را نصب کرده‌اید:
pip install textual

---

مثال: ساخت یک برنامه ساده با Textual
در این مثال، یک برنامه ساده می‌سازیم که یک پیام ساده را در وسط صفحه نمایش می‌دهد.

from textual.app import App
from textual.widgets import Static

class HelloWorldApp(App):
async def on_mount(self) -> None:
greeting = Static("Hello, Textual!", style="bold white on blue")
await self.view.dock(greeting, edge="top", size=3)

if __name__ == "__main__":
HelloWorldApp.run()

---

خروجی:
- یک پنجره ترمینال باز می‌شود که پیام "Hello, Textual!" را به صورت پررنگ و با پس‌زمینه آبی در وسط صفحه نمایش می‌دهد.

---

چرا Textual جذاب است؟
- ساده: کدنویسی بسیار ساده و خوانا.
- قدرتمند: امکان ساخت رابط‌های کاربری پیچیده و تعاملی در ترمینال.
- مدرن: از ویژگی‌های جدید پایتون مانند async/await پشتیبانی می‌کند.

#textual | learnpythonicy
👍4
4_404438013494427991.pdf
3.9 MB
📚 «Python Essential Reference»

📚 کتاب "مرجع ضروری پایتون"

آیا به دنبال یک مرجع جامع و کاربردی برای تسلط بر زبان برنامه‌نویسی پایتون هستید؟

این کتاب یک راهنمای کامل و ضروری برای توسعه‌دهندگان پایتون است که به‌صورت مختصر و مفید، مفاهیم کلیدی، syntax، و کتابخانه‌های استاندارد پایتون را پوشش می‌دهد.

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

چرا این کتاب را بخوانیم؟
- مناسب برای برنامه‌نویسان متوسط و پیشرفته
- ارائه مثال‌های کاربردی و تمرین‌های عملی
- مرجع سریع برای توسعه‌دهندگان حرفه‌ای

#معرفی_کتاب | #بوک_تایم | آموزش پایتون
👍2
چالش داریمممم👩‍💻
تابعی بنویسید که یک عدد بگیرد و لیست مقسوم‌علیه‌های آن را برگرداند.

#چالش | آموزش پایتون
👨‍💻2
پیدا کردن مقسوم‌علیه‌های یک عدد


😇 تابعی بنویسید که یک عدد بگیرد و لیست مقسوم‌علیه‌های آن را برگرداند. 😇

☑️ راه‌حل‌ چالش بالا

☑️ توضیح کد
1. یک تابع به نام find_divisors تعریف می‌کنیم که یک عدد n را به عنوان ورودی می‌گیرد.
2. یک لیست خالی به نام divisors ایجاد می‌کنیم تا مقسوم‌علیه‌ها را در آن ذخیره کنیم.
3. با استفاده از یک حلقه for، اعداد از ۱ تا n را بررسی می‌کنیم.
4. اگر عدد i مقسوم‌علیه n باشد (یعنی n % i == 0)، آن را به لیست divisors اضافه می‌کنیم.
5. در نهایت، لیست divisors را برمی‌گردانیم.

☑️ تو از چه راهی حل کردی؟ راه خودت و کامنت کن! 😉

#توضیح_چالش | آموزش پایتون
👍2👨‍💻1