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

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

لینک چنل ایتا:
https://eitaa.com/learnpythonicy
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
قدردان چیزی باش که داری؟ یا رویاهای بزرگی داشته باش؟

مهم نيست بقیه چی میگن، مهم اینه که تو تلاشتو بکنی و مسیر مناسب رو برای خودت و پیدا کنی😉

#موتیو_تایم
4
This media is not supported in your browser
VIEW IN TELEGRAM
🤣1
امروز چالش داریم😌
🤓1
با این تفاوت که یه هدیه به بهترین جواب تعلق میگیره🤩
آماده باشید برا ساعت 20:00
جواب چالش بفرستید بات🤓
@learnpythonicyBot

#چالش | #anagram | آموزش پایتون
ببینم کی هدیه را میگیره😪
انقدر که فعال هستید و بات پر شده از جواباتون نمیدونم جایزه را به کی بدم😔😂
پاسخ چالش "تابعی بنویسید که دو رشته بگیرد و بررسی کند آیا آن‌ها Anagram هستند یا نه"

🌟توضیحات کد:

1. حذف فاصله‌ها و تبدیل به حروف کوچک:
- s1.replace(" ", "").lower():


این خط از کد فاصله‌ها را از رشته اول s1 حذف می‌کند و آن را به حروف کوچک تبدیل می‌کند.

- s2.replace(" ", "").lower(): 


به همین ترتیب، فاصله‌ها را از رشته دوم s2 حذف و آن را به حروف کوچک تبدیل می‌کند.

2. مقایسه حروف:
- sorted(s1) == sorted(s2): 


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

3. تست تابع:
- string1 = "Listen" و string2 = "Silent": 


دو رشته به عنوان ورودی برای تست تابع تعریف شده‌اند.1

- print(are_anagrams(string1, string2)):


خروجی این تابع نمایش می‌دهد که آیا این دو رشته آنگرام یکدیگر هستند یا خیر. در این مورد، خروجی True خواهد بود زیرا حروف هر دو رشته برابر هستند.


#توضیح_چالش | آموزش پایتون
امشب طنز ببینیم 😜
اگر بخوایم اسم چنل و عوض کنیم، چه اسمی و پیشنهاد میدید؟
این کد پایتون زمان فعلی را در دو منطقه زمانی مختلف (تهران و نیویورک) نمایش میدهد و همچنین زمان تهران را به زمان نیویورک تبدیل میکند. در این کد از ماژول datetime برای کار با تاریخ و زمان و از ماژول zoneinfo برای مدیریت مناطق زمانی استفاده شده است.

☑️ مراحل کد به شرح زیر است:
1. مناطق زمانی تهران و نیویورک با استفاده از ZoneInfo تعریف میشوند.
2. زمان فعلی در منطقه زمانی تهران با استفاده از datetime.now() دریافت و چاپ میشود.
3. زمان فعلی در منطقه زمانی نیویورک نیز به همین ترتیب دریافت و چاپ میشود.
4. زمان تهران به زمان نیویورک با استفاده از متد astimezone() تبدیل شده و نتیجه چاپ میشود.

این کد برای نمایش تفاوت زمان بین دو منطقه زمانی و تبدیل زمان بین آنها مفید است.

#datetime | #zoneinfo | #module | learnpythonicy
👍2
دستور while در یک نگاه!

یک ابزار مفید برای تکرار عملیات تا زمان برقراری یک شرط خاص است.

#while | #codeBites | learnpythonicy
3
ارسال پیام خودکار به واتس‌اپ با Python! 🐍

با استفاده از کتابخانه‌ی PyWhatKit در Python، می‌توانید پیام‌های متنی را به سرعت به شماره‌های تلفن ارسال کنید.
در این مثال، ما یک پیام ساده به شماره‌ی "+989123456789" ارسال می‌کنیم. این کد به شما نشان می‌دهد که چطور می‌توانید به سادگی با چند خط کد، ارتباطات خود را بهبود بخشید!

نکات کلیدی:
- 📞 شماره تلفن را با کد کشور وارد کنید.
- ✉️ متن پیام را با توجه به نیاز خود تغییر دهید.
- با استفاده از wait_time، زمان لازم برای باز شدن واتساپ پیش از ارسال پیام را تنظیم کنید.

امیدوارم این کد برای شما مفید باشد! 💻

نظرات و پیشنهادات ارزشمند خود را با ما درمیان بگذارید🙏❤️ @learnpythonicyBot

#pywhatkit | #whatsapp | learnpythonicy
این یک برنامه ساده به نام مدیریت مالی شخصی است که به کاربران امکان می‌دهد درآمدها و هزینه‌های خود را ثبت و مدیریت کنند.
این برنامه از کتابخانه‌های pandas برای مدیریت داده‌ها و matplotlib برای ایجاد گزارش‌های تصویری استفاده می‌کند. در ادامه، توضیحات مربوط به کد آورده شده است:👇

#matplotlib | #pandas | learnpythonicy
☑️ ویژگی‌های اصلی:
1. افزودن تراکنش: کاربران می‌توانند یک تراکنش جدید را با مشخص کردن دسته‌بندی (مثلاً غذا، حقوق، اجاره)، نوع (درآمد/هزینه)، مقدار و تاریخ اضافه کنند.
2. مشاهده تراکنش‌ها: کاربران می‌توانند تمام تراکنش‌های ثبت‌شده را در قالب جدول مشاهده کنند.
3. تولید گزارش: برنامه یک نمودار دایره‌ای ایجاد می‌کند که توزیع درآمدها و هزینه‌ها را نشان می‌دهد.
4. خروج: کاربران می‌توانند از برنامه خارج شوند.

---

☑️ توضیحات کد:

1. ساختار داده‌ها:
- یک DataFrame از کتابخانه pandas برای ذخیره اطلاعات مالی استفاده می‌شود. این DataFrame شامل ستون‌های زیر است:
- Category: دسته‌بندی تراکنش (مثلاً غذا، حقوق، اجاره).
- Type: نوع تراکنش (درآمد یا هزینه).
- Amount: مقدار تراکنش.
- Date: تاریخ تراکنش.

2. افزودن تراکنش:
- تابع add_transaction یک تراکنش جدید را به DataFrame اضافه می‌کند. این تابع مقادیر ورودی کاربر را دریافت کرده و آن‌ها را به DataFrame اضافه می‌کند.

3. مشاهده تراکنش‌ها:
- تابع view_summary تمام تراکنش‌های ثبت‌شده را در قالب جدول نمایش می‌دهد. اگر هیچ تراکنشی ثبت نشده باشد، پیامی مناسب نمایش داده می‌شود.

4. تولید گزارش:
- تابع generate_report یک نمودار دایره‌ای ایجاد می‌کند که درصد درآمدها و هزینه‌ها را نشان می‌دهد. اگر هیچ تراکنشی ثبت نشده باشد، پیامی مناسب نمایش داده می‌شود.

5. منوی اصلی:
- یک حلقه while بینهایت وجود دارد که منوی اصلی را نمایش می‌دهد و بر اساس انتخاب کاربر، عملیات مناسب را انجام می‌دهد.

---

☑️ نحوه استفاده:
1. برنامه را اجرا کنید.
2. از منوی اصلی، گزینه‌های زیر را انتخاب کنید:
- 1: برای افزودن تراکنش جدید.
- 2: برای مشاهده تمام تراکنش‌ها.
- 3: برای تولید گزارش تصویری.
- 4: برای خروج از برنامه.

---

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

  Summary of Transactions:
Category Type Amount Date
0 Food Expense 50.00 2025-03-19
1 Salary Income 2000.00 2025-03-19

- گزارش تصویری یک نمودار دایره‌ای است که درصد درآمدها و هزینه‌ها را نشان می‌دهد.

---

🔘 این برنامه به‌راحتی قابل توسعه است و می‌توان ویژگی‌هایی مانند ذخیره داده‌ها در فایل، اضافه کردن دسته‌بندی‌های بیشتر، یا محاسبه موجودی کلی را به آن اضافه کرد.
import pandas as pd
import matplotlib.pyplot as plt

# تعریف DataFrame برای ذخیره اطلاعات مالی
data = {
'Category': [],
'Type': [], # Income or Expense
'Amount': [],
'Date': []
}
df = pd.DataFrame(data)

def add_transaction(category, t_type, amount, date):
global df
new_transaction = {'Category': category, 'Type': t_type, 'Amount': amount, 'Date': date}
df = pd.concat([df, pd.DataFrame([new_transaction])], ignore_index=True)
print("Transaction added successfully!")

def view_summary():
if df.empty:
print("No transactions recorded.")
return
print("\nSummary of Transactions:")
print(df)

def generate_report():
if df.empty:
print("No transactions recorded to generate a report.")
return

# گروه‌بندی داده‌ها بر اساس نوع (درآمد و هزینه)
summary = df.groupby('Type')['Amount'].sum()

# رسم نمودار دایره‌ای
plt.figure(figsize=(6, 6))
summary.plot(kind='pie', autopct='%1.1f%%', startangle=90, labels=summary.index, colors=['#8BC34A', '#F44336'])
plt.title('Income vs Expense')
plt.ylabel('')
plt.show()

# منوی اصلی
while True:
print("\nPersonal Finance Manager")
print("1. Add Transaction")
print("2. View Transactions")
print("3. Generate Report")
print("4. Exit")
choice = input("Choose an option: ")

if choice == "1":
category = input("Enter category (e.g., Food, Salary, Rent): ")
t_type = input("Enter type (Income/Expense): ")
amount = float(input("Enter amount: "))
date = input("Enter date (YYYY-MM-DD): ")
add_transaction(category, t_type, amount, date)

elif choice == "2":
view_summary()

elif choice == "3":
generate_report()

elif choice == "4":
print("Exiting program. Have a great day!")
break

else:
print("Invalid choice. Please try again.")
سالی پُرموفقیت و پرباری رو براتون میخوام🫂