چنل پایتون | جنگو | برنامه نویسی وب سایت
421 subscribers
292 photos
141 videos
40 files
208 links
ارتباط با مدیر:

@Amir_123_ka
Download Telegram
🔤 آموزش کامل متدهای کار با رشته‌ها در پایتون 🔤

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

1. lower()
این متد تمام حروف رشته را به حروف کوچک تبدیل می‌کند.

text = "Hello, WORLD!"
print(text.lower())  # خروجی: hello, world!

2. upper()
این متد تمام حروف رشته را به حروف بزرگ تبدیل می‌کند.

text = "Hello, world!"
print(text.upper())  # خروجی: HELLO, WORLD!

3. capitalize()
این متد حرف اول رشته را به حروف بزرگ و بقیه را به حروف کوچک تبدیل می‌کند.

text = "hello, world!"
print(text.capitalize())  # خروجی: Hello, world!

4. title()
این متد حرف اول هر کلمه در رشته را به حروف بزرگ تبدیل می‌کند.

text = "hello, world!"
print(text.title())  # خروجی: Hello, World!

5. strip()
این متد فاصله‌های خالی در ابتدای و انتهای رشته را حذف می‌کند.

text = "  hello, world!  "
print(text.strip())  # خروجی: hello, world!

6. startswith()
این متد بررسی می‌کند که آیا رشته با زیررشته‌ی خاصی شروع می‌شود یا نه.

text = "hello, world!"
print(text.startswith("hello"))  # خروجی: True

7. endswith()
این متد بررسی می‌کند که آیا رشته با زیررشته‌ی خاصی پایان می‌یابد یا نه.

text = "hello, world!"
print(text.endswith("world!"))  # خروجی: True

8. replace()
این متد یک زیررشته را با زیررشته‌ای دیگر در رشته جایگزین می‌کند.

text = "hello, world!"
print(text.replace("world", "Python"))  # خروجی: hello, Python!

9. split()
این متد رشته را بر اساس یک جداکننده خاص جدا کرده و به لیست تبدیل می‌کند.

text = "one, two, three"
print(text.split(", "))  # خروجی: ['one', 'two', 'three']

10. join()
این متد عناصر یک لیست را با استفاده از یک جداکننده خاص به یکدیگر متصل می‌کند.

items = ['one', 'two', 'three']
print(", ".join(items))  # خروجی: one, two, three

11. find()
این متد اولین موقعیت یک زیررشته را در رشته پیدا می‌کند. اگر زیررشته وجود نداشته باشد، -1 برمی‌گرداند.

text = "hello, world!"
print(text.find("world"))  # خروجی: 7

12. index()
این متد اولین موقعیت یک زیررشته را در رشته پیدا می‌کند. اگر زیررشته وجود نداشته باشد، خطا برمی‌گرداند.

text = "hello, world!"
print(text.index("world"))  # خروجی: 7

13. count()
این متد تعداد تکرار یک زیررشته در رشته را شمارش می‌کند.

text = "hello, world! hello again!"
print(text.count("hello"))  # خروجی: 2

14. isnumeric()
این متد بررسی می‌کند که آیا همه کاراکترهای رشته اعداد هستند یا نه.

text = "12345"
print(text.isnumeric())  # خروجی: True

15. zfill()
این متد طول رشته را به طول مشخصی می‌رساند و با اضافه کردن صفر از سمت چپ، رشته را پر می‌کند.

text = "42"
print(text.zfill(5))  # خروجی: 00042

16. swapcase()
این متد حروف بزرگ را به کوچک و حروف کوچک را به بزرگ تبدیل می‌کند.

text = "Hello, World!"
print(text.swapcase())  # خروجی: hELLO, wORLD!

17. format()
این متد رشته‌ها را با استفاده از جایگزینی قالب‌بندی می‌کند.

name = "Alice"
age = 30
print("My name is {} and I am {} years old.".format(name, age))
# خروجی: My name is Alice and I am 30 years old.

18. rjust()
این متد رشته را به طول مشخصی می‌رساند و از سمت چپ با کاراکتر خاصی پر می‌کند.

text = "42"
print(text.rjust(5, '0'))  # خروجی: 00042

19. ljust()
این متد رشته را به طول مشخصی می‌رساند و از سمت راست با کاراکتر خاصی پر می‌کند.

text = "42"
print(text.ljust(5, '0'))  # خروجی: 42000

این هم از متدهای کار با رشته‌ها در پایتون! امیدوارم این آموزش براتون مفید باشه و ازش استفاده کنید.
پروژه ۱ - مدیریت مخاطبین 📞📝

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

۱. تعریف ساختار پروژه
این پروژه شامل قابلیت‌های زیر خواهد بود:
- اضافه کردن مخاطب جدید
- نمایش لیست مخاطبین
- جستجو در مخاطبین
- حذف مخاطب
- ذخیره و بازیابی مخاطبین در فایل

۲. ایجاد فایل اصلی پروژه
ابتدا فایل اصلی پروژه را ایجاد کنید و ساختار اولیه آن را پیاده‌سازی کنید.
import json

# مسیر فایل ذخیره مخاطبین
CONTACTS_FILE = 'contacts.json'

def load_contacts():
"""بارگذاری مخاطبین از فایل"""
try:
with open(CONTACTS_FILE, 'r') as file:
return json.load(file)
except FileNotFoundError:
return []

def save_contacts(contacts):
"""ذخیره مخاطبین در فایل"""
with open(CONTACTS_FILE, 'w') as file:
json.dump(contacts, file, indent=4)

def add_contact(contacts):
"""اضافه کردن مخاطب جدید"""
name = input("نام: ")
phone = input("شماره تلفن: ")
email = input("ایمیل: ")

contact = {
'name': name,
'phone': phone,
'email': email
}
contacts.append(contact)
print("مخاطب جدید اضافه شد.")

def display_contacts(contacts):
"""نمایش لیست مخاطبین"""
for idx, contact in enumerate(contacts, start=1):
print(f"{idx}. {contact['name']} - {contact['phone']} - {contact['email']}")

def search_contacts(contacts):
"""جستجو در مخاطبین"""
search_name = input("نام برای جستجو: ")
found_contacts = [c for c in contacts if search_name.lower() in c['name'].lower()]

if found_contacts:
for contact in found_contacts:
print(f"{contact['name']} - {contact['phone']} - {contact['email']}")
else:
print("مخاطبی پیدا نشد.")

def delete_contact(contacts):
"""حذف مخاطب"""
display_contacts(contacts)
idx = int(input("شماره مخاطب برای حذف: ")) - 1

if 0 <= idx < len(contacts):
deleted_contact = contacts.pop(idx)
print(f"مخاطب {deleted_contact['name']} حذف شد.")
else:
print("شماره نامعتبر است.")

def main():
contacts = load_contacts()

while True:
print("\nمدیریت مخاطبین:")
print("1. اضافه کردن مخاطب")
print("2. نمایش لیست مخاطبین")
print("3. جستجو در مخاطبین")
print("4. حذف مخاطب")
print("5. خروج")

choice = input("انتخاب شما: ")

if choice == '1':
add_contact(contacts)
elif choice == '2':
display_contacts(contacts)
elif choice == '3':
search_contacts(contacts)
elif choice == '4':
delete_contact(contacts)
elif choice == '5':
save_contacts(contacts)
break
else:
print("انتخاب نامعتبر است.")

if __name__ == '__main__':
main()
۳. توضیحات هر تابع
- تابع load_contacts: مخاطبین را از فایل JSON بارگذاری می‌کند. اگر فایل موجود نباشد، یک لیست خالی برمی‌گرداند.
- تابع save_contacts: مخاطبین را در فایل JSON ذخیره می‌کند.
- تابع add_contact: اطلاعات یک مخاطب جدید را از کاربر می‌گیرد و به لیست مخاطبین اضافه می‌کند.
- تابع display_contacts: لیست مخاطبین را با استفاده از یک حلقه چاپ می‌کند.
- تابع search_contacts: نام وارد شده را جستجو کرده و مخاطبین مرتبط را نمایش می‌دهد.
- تابع delete_contact: مخاطب مورد نظر را بر اساس شماره انتخاب شده از لیست حذف می‌کند.
- تابع main: حلقه اصلی برنامه که منوی اصلی را نمایش داده و انتخاب کاربر را مدیریت می‌کند.

۴. نکات مهم
- مدیریت فایل: برای ذخیره و بارگذاری مخاطبین از فایل JSON استفاده شده است تا بتوانیم داده‌ها را بین اجراهای مختلف برنامه حفظ کنیم.
- پیشگیری از خطا: در حذف مخاطب، اطمینان حاصل می‌شود که شماره وارد شده معتبر است.
- تعامل با کاربر: اطلاعات مخاطب را از ورودی کاربر گرفته و نتیجه عملیات را به کاربر نمایش می‌دهد.
👍5
آموزش ساخت QR کد با پایتون 🖼️

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

1. نصب کتابخانه qrcode 📦

ابتدا باید کتابخانه qrcode را نصب کنیم. این کتابخانه به ما امکان می‌دهد که به راحتی QR کد ایجاد کنیم. برای نصب آن از pip استفاده کنید:
pip install qrcode[pil]
2. وارد کردن کتابخانه qrcode 📚

پس از نصب، کتابخانه qrcode را وارد می‌کنیم:
import qrcode
3. ایجاد یک QR کد ساده 🎨

حالا می‌خواهیم یک QR کد ساده ایجاد کنیم. در این مثال، ما یک لینک به وب‌سایت را در QR کد قرار می‌دهیم:

# ایجاد یک QR کد ساده
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_L,
box_size=10,
border=4,
)
# داده‌ای که می‌خواهید در QR کد قرار دهید
data = "https://www.example.com"

# اضافه کردن داده به QR کد
qr.add_data(data)
qr.make(fit=True)

# ساخت تصویر QR کد
img = qr.make_image(fill_color="black", back_color="white")

# ذخیره تصویر QR کد
img.save("qrcode.png")
4. تنظیمات بیشتر برای QR کد 🔧

می‌توانید تنظیمات بیشتری برای QR کد اعمال کنید، مانند تغییر رنگ‌ها، اندازه و سطح تصحیح خطا. برای مثال:
# ایجاد یک QR کد با تنظیمات بیشتر
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_H, # سطح تصحیح خطا: H (بالا)
box_size=10,
border=4,
)

data = "https://www.example.com"
qr.add_data(data)
qr.make(fit=True)

# ساخت تصویر QR کد با رنگ‌های سفارشی
img = qr.make_image(fill_color="blue", back_color="yellow")

# ذخیره تصویر QR کد
img.save("custom_qrcode.png")
5. استفاده از کتابخانه pillow برای نمایش QR کد 🖼️

برای نمایش تصویر QR کد در برنامه پایتون، می‌توانیم از کتابخانه Pillow استفاده کنیم. اگر هنوز نصب نکرده‌اید، آن را نصب کنید:
pip install Pillow
سپس از آن برای نمایش تصویر استفاده کنید:
from PIL import Image

# باز کردن و نمایش تصویر QR کد
img = Image.open("qrcode.png")
img.show()
6. جمع‌بندی 📜

با استفاده از کتابخانه qrcode در پایتون، می‌توانید به راحتی QR کد‌های سفارشی ایجاد کنید. این QR کد‌ها می‌توانند برای کاربردهای مختلفی مانند به اشتراک‌گذاری لینک‌ها، اطلاعات تماس، و حتی پرداخت‌ها استفاده شوند. امیدوارم این آموزش برای شما مفید باشد و بتوانید از آن در پروژه‌های خود استفاده کنید.
3
راهنمای_شروع_و_پیشرفت_و_حرفه_ای.pdf
247.4 KB
📖چگونه در #پایتون حرفه ایی شویم ؟
👤برگرفته از وبلاگ جادی
—————————————————
راهنمای حرفه ای شدن در پایتون👆☑️
معرفی کتابخانه‌های گرافیکی در پایتون 🎨

سلام دوستان! امروز می‌خواهیم به معرفی چند کتابخانه گرافیکی عالی برای پایتون بپردازیم که به شما کمک می‌کنند تا پروژه‌های گرافیکی خلاقانه و حرفه‌ای بسازید. هر یک از این کتابخانه‌ها قابلیت‌ها و کاربردهای منحصر به فردی دارند. بیایید آن‌ها را بررسی کنیم! 😊

1. Pygame 🎮

Pygame یکی از محبوب‌ترین کتابخانه‌ها برای توسعه بازی‌های دوبعدی است. این کتابخانه به شما امکان می‌دهد تا به راحتی بازی‌های گرافیکی بسازید و از امکانات مختلفی مثل صدا، تصویر و رویدادها استفاده کنید.

ویژگی‌ها:
- پشتیبانی از صدا و تصویر
- مدیریت رویدادها
- قابلیت ساخت بازی‌های دوبعدی

2. Tkinter 🖥️

Tkinter کتابخانه‌ی داخلی پایتون برای ساخت رابط‌های کاربری گرافیکی (GUI) است. با استفاده از Tkinter می‌توانید برنامه‌های دسکتاپی با رابط کاربری زیبا و کاربردی بسازید.

ویژگی‌ها:
- کتابخانه‌ی داخلی پایتون
- مناسب برای ساخت برنامه‌های دسکتاپی
- ابزارهای متعدد برای طراحی رابط کاربری

3. Matplotlib 📊

Matplotlib کتابخانه‌ای برای ترسیم نمودارها و گراف‌ها است. این کتابخانه به شما امکان می‌دهد تا نمودارهای خطی، ستونی، پراکنده و بسیاری از نمودارهای دیگر را به راحتی رسم کنید.

ویژگی‌ها:
- ترسیم انواع نمودارها
- سفارشی‌سازی بالا
- مناسب برای تحلیل داده‌ها

4. PIL/Pillow 🖼️

PIL (Python Imaging Library) و نسخه به‌روز شده‌ی آن Pillow، کتابخانه‌هایی برای پردازش تصویر هستند. با استفاده از این کتابخانه‌ها می‌توانید تصاویر را باز کنید، ویرایش کنید و ذخیره کنید.

ویژگی‌ها:
- باز و ذخیره کردن تصاویر
- ویرایش تصاویر
- پشتیبانی از فرمت‌های مختلف تصویری

5. OpenCV 👁️

OpenCV (Open Source Computer Vision Library) یکی از قدرتمندترین کتابخانه‌ها برای پردازش تصویر و بینایی ماشین است. این کتابخانه امکانات بسیاری برای تحلیل و پردازش تصاویر ارائه می‌دهد.

ویژگی‌ها:
- پردازش تصویر و ویدئو
- تشخیص اشیا و چهره
- تحلیل ویدئویی

6. Kivy 📱

Kivy یک کتابخانه متن‌باز برای ساخت برنامه‌های چند لمسی (multi-touch) و رابط‌های کاربری گرافیکی است. این کتابخانه برای توسعه برنامه‌های موبایلی بسیار مناسب است.

ویژگی‌ها:
- توسعه رابط‌های کاربری چند لمسی
- پشتیبانی از اندروید و iOS
- مناسب برای برنامه‌های موبایلی

7. PyQt5 🖌️

PyQt5 یک کتابخانه گرافیکی برای ساخت رابط‌های کاربری گرافیکی است که از ابزارهای Qt استفاده می‌کند. این کتابخانه به شما امکان می‌دهد تا برنامه‌های دسکتاپی حرفه‌ای و زیبا بسازید.

ویژگی‌ها:
- رابط‌های کاربری حرفه‌ای
- ابزارهای متعدد برای طراحی رابط
- مناسب برای برنامه‌های دسکتاپی

8. Plotly 📈

Plotly کتابخانه‌ای برای ترسیم نمودارهای تعاملی و زیبا است. این کتابخانه به شما امکان می‌دهد تا نمودارهای تعاملی و وب‌محور بسازید که می‌توانند در صفحات وب قرار گیرند.

ویژگی‌ها:
- نمودارهای تعاملی
- مناسب برای صفحات وب
- پشتیبانی از انواع نمودارها

9. Bokeh 🌼

Bokeh کتابخانه‌ای برای ترسیم نمودارهای تعاملی و بصری است که به شما امکان می‌دهد تا نمودارهای تعاملی و حرفه‌ای برای تحلیل داده‌ها بسازید.

ویژگی‌ها:
- نمودارهای تعاملی
- مناسب برای تحلیل داده‌ها
- ابزارهای متعدد برای سفارشی‌سازی

10. Turtle 🐢

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

ویژگی‌ها:
- آموزشی و سرگرم‌کننده
- مناسب برای کودکان و مبتدیان
- یادگیری مفاهیم گرافیک و برنامه‌نویسی
روش های صحیح نامگذاری در برنامه نویسی
🔰الگوریتم چيست؟🔰

⬅️مفهوم الگوریتم :
مجموعه ای متناهی از دستورالعمل ها است، که به ترتیب خاصی اجرا می شوند و مسئله ای را حل می کنند. به عبارت دیگر یک الگوریتم، روشی گام به گام برای حل مسئله است.

⬅️الگوریتم در علوم رایانه:
در علوم رایانه، یک الگوریتم را یک روال محاسباتی خوش‌تعریف می‌دانند، که مقدار یا مجموعه‌ای از مقادیر را به عنوان ورودی (Input) دریافت کرده و پس از طی چند گام محاسباتی، ورودی را به خروجی (Output) تبدیل می‌کند.

⬅️خصوصیات الگوریتم:
ورودی(یک الگوریتم باید هیچ یا حداقل یک پارامتر را به عنوان ورودی بپذیرد)
خروجی(الگوریتم بایستی حداقل یک کمیت به عنوان خروجی (نتیجهٔ عملیات) تولید کند)
قطعیت( برای هر ورودی باید یک پردازش صحیح تعریف شده باشد)
محدودیت(الگوریتم باید دارای شروع و پایان مشخصی باشد، به نحوی که اگر دستورهای آن را دنبال کنیم، برای تمامی حالت‌ها، الگوریتم پس از طی مراحل، خاتمه یابد. به علاوه، زمان لازم برای خاتمه الگوریتم هم باید به گونه‌ای معقول و کوتاه باشد.)

#الگوریتم #پایتون
#algorithm
#چالش

اگر میخواستی یه کافه برای برنامه‌نویسا بزنی

چه برنامه‌هایی براش داشتی؟

هرکی کافش بهتر باشه کافه اون میرم فقط 😋
نکات پنهان پایتون 🔍🐍

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

🔍 هر روز یک نکته پنهان پایتون
- هدف: آشنایی با ویژگی‌ها و ترفندهای ناشناخته‌ی پایتون.
- فواید: افزایش مهارت‌های برنامه‌نویسی و شناخت بهتر زبان پایتون.

📋 مثال‌هایی از نکات پنهان:
1. استفاده از تابع getattr() برای دسترسی پویا به خصوصیات و متدها:

   class MyClass:
def __init__(self, value):
self.value = value

def print_value(self):
print(self.value)

obj = MyClass(10)
method_name = "print_value"
getattr(obj, method_name)() # دسترسی به متد و اجرا

2. استفاده از تابع dir() برای مشاهده تمامی خصوصیات و متدهای یک شیء:

   obj = MyClass(10)
print(dir(obj))

3. استفاده از توابع لامبدا برای ساخت توابع ناشناس:
   add = lambda x, y: x + y
print(add(3, 5)) # خروجی: 8

🎯 هدف اصلی این پست‌ها:
- آموزش نکات پنهان پایتون به صورت ساده و کاربردی.
- افزایش دانش برنامه‌نویسی و بهره‌وری در کدنویسی.
😁21