🖥 | برای دوستانی که با «PC» کد میزنن برنامه «Visual Studio Code»
📱 | برای کسانی که با «موبایل» کد میزنن «Pydroid 3» رو پیشنهاد میکنم
⚠️ : @hamidpython123
📱 | برای کسانی که با «موبایل» کد میزنن «Pydroid 3» رو پیشنهاد میکنم
⚠️ : @hamidpython123
Telegram
Python3
🎓 آموزش و پروژههای Python
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍5
پارت ۱۳: ماژولها و پکیجها در پایتون 📦🐍
در این پارت با ماژولها و پکیجها در پایتون آشنا میشویم و میبینیم چگونه میتوانیم کدهای خود را به صورت منطقی و قابل نگهداری تقسیمبندی کنیم.
۱. ماژولها (Modules)
ماژولها فایلهایی با پسوند
ایجاد و استفاده از یک ماژول
1. ایجاد ماژول: ابتدا یک فایل به نام
2. استفاده از ماژول: در یک فایل دیگر میتوانید از ماژول ایجاد شده استفاده کنید:
۲. پکیجها (Packages)
پکیجها مجموعهای از ماژولها هستند که در یک دایرکتوری قرار دارند و شامل یک فایل
ایجاد و استفاده از یک پکیج
1. ایجاد پکیج: ساختار زیر را ایجاد کنید:
2. فایل
3. فایل
4. استفاده از پکیج:
۳. نصب و استفاده از پکیجهای خارجی
شما میتوانید از پکیجهای خارجی که توسط جامعه پایتون ایجاد شدهاند نیز استفاده کنید. این پکیجها معمولاً از طریق PyPI (Python Package Index) در دسترس هستند و میتوانید آنها را با استفاده از pip نصب کنید.
نصب یک پکیج
به عنوان مثال، نصب پکیج
استفاده از پکیج نصب شده
۴. ایجاد و انتشار پکیج خود
اگر شما یک پکیج ایجاد کردهاید و میخواهید آن را با دیگران به اشتراک بگذارید، میتوانید آن را در PyPI منتشر کنید. این فرآیند شامل ایجاد فایلهایی مانند
فایل
این فایل شامل اطلاعاتی درباره پکیج شماست:
انتشار پکیج
مراحل کلی برای انتشار پکیج شامل ساخت و آپلود بسته به PyPI است:
[اینم کانال ما]
#پایتون #آموزش_پایتون #ماژول #پکیج #PythonModules #PythonPackages
در این پارت با ماژولها و پکیجها در پایتون آشنا میشویم و میبینیم چگونه میتوانیم کدهای خود را به صورت منطقی و قابل نگهداری تقسیمبندی کنیم.
۱. ماژولها (Modules)
ماژولها فایلهایی با پسوند
.py
هستند که شامل کد پایتون میباشند. شما میتوانید از ماژولها برای سازماندهی کدهای خود و جلوگیری از تکرار کدها استفاده کنید.ایجاد و استفاده از یک ماژول
1. ایجاد ماژول: ابتدا یک فایل به نام
my_module.py
ایجاد کنید و کدهای زیر را در آن قرار دهید:# my_module.py
def greet(name):
return f"Hello, {name}!"
def add(a, b):
return a + b
2. استفاده از ماژول: در یک فایل دیگر میتوانید از ماژول ایجاد شده استفاده کنید:
# main.py
import my_module
print(my_module.greet("Alice")) # خروجی: Hello, Alice!
print(my_module.add(5, 3)) # خروجی: 8
۲. پکیجها (Packages)
پکیجها مجموعهای از ماژولها هستند که در یک دایرکتوری قرار دارند و شامل یک فایل
init.py هست
ند. این فایل میتواند خالی باشد یا کدهای خاصی را شامل شود.ایجاد و استفاده از یک پکیج
1. ایجاد پکیج: ساختار زیر را ایجاد کنید:
my_package/
__init__.py
module1.py
module2.py
2. فایل
module1.py
:# module1.py
def multiply(a, b):
return a * b
3. فایل
module2.py
:# module2.py
def divide(a, b):
if b == 0:
return "Cannot divide by zero!"
return a / b
4. استفاده از پکیج:
# main.py
from my_package import module1, module2
print(module1.multiply(4, 5)) # خروجی: 20
print(module2.divide(10, 2)) # خروجی: 5.0
۳. نصب و استفاده از پکیجهای خارجی
شما میتوانید از پکیجهای خارجی که توسط جامعه پایتون ایجاد شدهاند نیز استفاده کنید. این پکیجها معمولاً از طریق PyPI (Python Package Index) در دسترس هستند و میتوانید آنها را با استفاده از pip نصب کنید.
نصب یک پکیج
به عنوان مثال، نصب پکیج
requests
برای انجام درخواستهای HTTP:pip install requests
استفاده از پکیج نصب شده
import requests
response = requests.get('https://api.github.com')
print(response.status_code) # خروجی: 200 (یا هر کد وضعیت دیگر)
print(response.json()) # خروجی: دادههای JSON دریافت شده از API
۴. ایجاد و انتشار پکیج خود
اگر شما یک پکیج ایجاد کردهاید و میخواهید آن را با دیگران به اشتراک بگذارید، میتوانید آن را در PyPI منتشر کنید. این فرآیند شامل ایجاد فایلهایی مانند
setup.py
و ثبت پکیج در PyPI میشود.فایل
setup.py
این فایل شامل اطلاعاتی درباره پکیج شماست:
from setuptools import setup, find_packages
setup(
name='my_package',
version='0.1',
packages=find_packages(),
install_requires=[],
)
انتشار پکیج
مراحل کلی برای انتشار پکیج شامل ساخت و آپلود بسته به PyPI است:
python setup.py sdist bdist_wheel
twine upload dist/*
[اینم کانال ما]
#پایتون #آموزش_پایتون #ماژول #پکیج #PythonModules #PythonPackages
پارت ۱۴: کتابخانههای استاندارد پایتون 📚🐍
در این پارت، به بررسی کتابخانههای استاندارد پایتون میپردازیم که ابزارهای قدرتمندی برای انجام وظایف مختلف در اختیار شما قرار میدهند. کتابخانه استاندارد پایتون شامل ماژولها و پکیجهایی است که با نصب پایتون به طور پیشفرض در دسترس هستند و نیاز به نصب جداگانه ندارند.
۱. کتابخانه
کتابخانه
مثالهایی از کتابخانه
۲. کتابخانه
کتابخانه
مثالهایی از کتابخانه
۳. کتابخانه
کتابخانه
مثالهایی از کتابخانه
۴. کتابخانه
کتابخانه
مثالهایی از کتابخانه
۵. کتابخانه
کتابخانه
مثالهایی از کتابخانه
۶. کتابخانه
کتابخانه
مثالهایی از کتابخانه
(آموزش های خیلی مفید کانال ما)
#پایتون #آموزش_پایتون #کتابخانه_استاندارد #PythonStandardLibrary #PythonModules
در این پارت، به بررسی کتابخانههای استاندارد پایتون میپردازیم که ابزارهای قدرتمندی برای انجام وظایف مختلف در اختیار شما قرار میدهند. کتابخانه استاندارد پایتون شامل ماژولها و پکیجهایی است که با نصب پایتون به طور پیشفرض در دسترس هستند و نیاز به نصب جداگانه ندارند.
۱. کتابخانه
math
کتابخانه
math
شامل توابع و ثابتهای ریاضی پایهای است که برای انجام محاسبات ریاضی مورد استفاده قرار میگیرد.مثالهایی از کتابخانه
math
import math
# محاسبه جذر
print(math.sqrt(16)) # خروجی: 4.0
# محاسبه سینوس
print(math.sin(math.pi / 2)) # خروجی: 1.0
# محاسبه لگاریتم
print(math.log(10)) # خروجی: 2.302585092994046
۲. کتابخانه
datetime
کتابخانه
datetime
برای کار با تاریخ و زمان استفاده میشود. این کتابخانه امکان انجام محاسبات تاریخ و زمان، قالببندی و تجزیه را فراهم میکند.مثالهایی از کتابخانه
datetime
import datetime
# ایجاد یک شیء تاریخ و زمان
now = datetime.datetime.now()
print(now) # خروجی: تاریخ و زمان فعلی
# قالببندی تاریخ
print(now.strftime("%Y-%m-%d %H:%M:%S")) # خروجی: قالببندی شده به صورت سال-ماه-روز ساعت:دقیقه:ثانیه
# محاسبه اختلاف بین دو تاریخ
date1 = datetime.datetime(2023, 7, 5)
date2 = datetime.datetime(2024, 7, 5)
diff = date2 - date1
print(diff.days) # خروجی: 366
۳. کتابخانه
os
کتابخانه
os
ابزارهایی برای تعامل با سیستمعامل فراهم میکند، از جمله کار با فایلها و دایرکتوریها، اجرای دستورات سیستمعامل و دسترسی به متغیرهای محیطی.مثالهایی از کتابخانه
os
import os
# دریافت مسیر دایرکتوری فعلی
current_directory = os.getcwd()
print(current_directory) # خروجی: مسیر دایرکتوری فعلی
# ایجاد یک دایرکتوری جدید
os.mkdir("new_directory")
# لیست کردن فایلها و دایرکتوریها
files = os.listdir(".")
print(files) # خروجی: لیستی از فایلها و دایرکتوریها در دایرکتوری فعلی
۴. کتابخانه
sys
کتابخانه
sys
ابزارهایی برای تعامل با مفسر پایتون فراهم میکند، از جمله دسترسی به آرگومانهای خط فرمان، مدیریت خروجی و ورودی استاندارد و مدیریت استثناءها.مثالهایی از کتابخانه
sys
import sys
# دریافت آرگومانهای خط فرمان
print(sys.argv) # خروجی: لیستی از آرگومانهای خط فرمان
# چاپ پیام خطا و خروج از برنامه
sys.stderr.write("This is an error message\n")
sys.exit(1)
۵. کتابخانه
random
کتابخانه
random
برای تولید اعداد تصادفی و انجام عملیات تصادفی مانند انتخاب عناصر از لیست استفاده میشود.مثالهایی از کتابخانه
random
import random
# تولید یک عدد تصادفی بین 1 و 10
print(random.randint(1, 10)) # خروجی: یک عدد تصادفی بین 1 و 10
# انتخاب تصادفی از لیست
choices = ['apple', 'banana', 'cherry']
print(random.choice(choices)) # خروجی: یکی از عناصر لیست به صورت تصادفی
# مخلوط کردن عناصر لیست
random.shuffle(choices)
print(choices) # خروجی: لیست مخلوط شده
۶. کتابخانه
json
کتابخانه
json
برای کار با دادههای JSON استفاده میشود. این کتابخانه ابزارهایی برای تبدیل دادههای پایتون به فرمت JSON و برعکس فراهم میکند.مثالهایی از کتابخانه
json
import json
# تبدیل دیکشنری به رشته JSON
data = {'name': 'Alice', 'age': 30}
json_string = json.dumps(data)
print(json_string) # خروجی: {"name": "Alice", "age": 30}
# تبدیل رشته JSON به دیکشنری
data_parsed = json.loads(json_string)
print(data_parsed) # خروجی: {'name': 'Alice', 'age': 30}
(آموزش های خیلی مفید کانال ما)
#پایتون #آموزش_پایتون #کتابخانه_استاندارد #PythonStandardLibrary #PythonModules
Telegram
Python3
🎓 آموزش و پروژههای Python
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍2
آیا میدانستید؟ 🤓
اولین کامپیوتر مکانیکی قابل برنامهریزی در جهان توسط کنراد تسوزه (Konrad Zuse) ساخته شد و به نام Z1 شناخته میشود. 💻✨ این شاهکار مهندسی در سال 1938 در آلمان ساخته شد و یکی از اولین تلاشها برای ایجاد یک کامپیوتر دیجیتال واقعی بود.
Z1 با استفاده از قطعات مکانیکی پیچیدهای که شامل اهرمها و چرخدندهها بود، اطلاعات دو دویی (باینری) را ذخیره و پردازش میکرد. 🤖🛠 این کامپیوتر مکانیکی دارای دقت و سرعت کمتری نسبت به کامپیوترهای الکترونیکی امروزی بود، اما گامی بزرگ در جهت توسعه علم کامپیوتر به حساب میآید.
از ویژگیهای جالب Z1 میتوان به موارد زیر اشاره کرد:
- استفاده از مموری مکانیکی برای ذخیره دادهها 🗄🔧
- قابلیت برنامهریزی با استفاده از نوارهای پانچ 📜🎛
- انجام محاسبات منطقی و ریاضی با استفاده از سیستم دو دویی 🔢🤓
Z1 توسط تسوزه در خانهاش و با استفاده از منابع محدودی که در دسترس داشت، ساخته شد. این دستگاه نشاندهنده نبوغ و پیشگامی تسوزه در حوزه کامپیوتر بود و راه را برای نسلهای بعدی کامپیوترها هموار کرد. 👨🔬🚀
این کامپیوتر خارقالعاده، اگرچه در جنگ جهانی دوم و بمبارانها از بین رفت، اما مدلهای بازسازی شده آن در موزههای مختلفی به نمایش گذاشته شدهاند تا یادآور یکی از نخستین گامها در دنیای محاسبات باشند. 🏛🔍
(دانستنی های بیشتر توی کانال ما)
#تاریخچه_کامپیوتر #کنراد_تسوزه #Z1 #کامپیوتر_مکانیکی #نوآوری #دانستنی #علم_و_فناوری
اولین کامپیوتر مکانیکی قابل برنامهریزی در جهان توسط کنراد تسوزه (Konrad Zuse) ساخته شد و به نام Z1 شناخته میشود. 💻✨ این شاهکار مهندسی در سال 1938 در آلمان ساخته شد و یکی از اولین تلاشها برای ایجاد یک کامپیوتر دیجیتال واقعی بود.
Z1 با استفاده از قطعات مکانیکی پیچیدهای که شامل اهرمها و چرخدندهها بود، اطلاعات دو دویی (باینری) را ذخیره و پردازش میکرد. 🤖🛠 این کامپیوتر مکانیکی دارای دقت و سرعت کمتری نسبت به کامپیوترهای الکترونیکی امروزی بود، اما گامی بزرگ در جهت توسعه علم کامپیوتر به حساب میآید.
از ویژگیهای جالب Z1 میتوان به موارد زیر اشاره کرد:
- استفاده از مموری مکانیکی برای ذخیره دادهها 🗄🔧
- قابلیت برنامهریزی با استفاده از نوارهای پانچ 📜🎛
- انجام محاسبات منطقی و ریاضی با استفاده از سیستم دو دویی 🔢🤓
Z1 توسط تسوزه در خانهاش و با استفاده از منابع محدودی که در دسترس داشت، ساخته شد. این دستگاه نشاندهنده نبوغ و پیشگامی تسوزه در حوزه کامپیوتر بود و راه را برای نسلهای بعدی کامپیوترها هموار کرد. 👨🔬🚀
این کامپیوتر خارقالعاده، اگرچه در جنگ جهانی دوم و بمبارانها از بین رفت، اما مدلهای بازسازی شده آن در موزههای مختلفی به نمایش گذاشته شدهاند تا یادآور یکی از نخستین گامها در دنیای محاسبات باشند. 🏛🔍
(دانستنی های بیشتر توی کانال ما)
#تاریخچه_کامپیوتر #کنراد_تسوزه #Z1 #کامپیوتر_مکانیکی #نوآوری #دانستنی #علم_و_فناوری
Telegram
Python3
🎓 آموزش و پروژههای Python
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍1
آیا میدانستید؟ 🤓
یکی از نکات بسیار مهم در کار با توابع در پایتون که میتواند به شما کمک کند تا با خطاهای کمتری مواجه شوید، استفاده از آرگومانهای پیشفرض (Default Arguments) است. 🌟
آرگومانهای پیشفرض در پایتون
در پایتون، شما میتوانید برای آرگومانهای یک تابع مقدار پیشفرض تعیین کنید. این کار باعث میشود که اگر هنگام فراخوانی تابع مقداری برای این آرگومانها ارسال نشود، مقدار پیشفرض استفاده شود. 📝🔧
مثال
چرا استفاده از آرگومانهای پیشفرض مهم است؟
1. جلوگیری از خطاهای رایج: وقتی شما آرگومانهای پیشفرض تعیین میکنید، در صورتی که برخی از آرگومانها فراموش شوند، کد شما همچنان به درستی کار خواهد کرد و با خطای "آرگومان کافی نیست" مواجه نخواهید شد. 🚫❌
2. افزایش خوانایی و کارایی کد: با استفاده از آرگومانهای پیشفرض، کد شما خواناتر و استفاده از توابع شما راحتتر خواهد شد، به خصوص زمانی که توابع پیچیدهتری دارید. 📖✨
3. انعطافپذیری بیشتر: شما میتوانید توابعی بنویسید که در شرایط مختلف و با مقادیر ورودی مختلف به درستی عمل کنند، بدون اینکه نیاز باشد چندین تابع مختلف برای شرایط متفاوت تعریف کنید. 🎛🔄
این نکته ساده اما قدرتمند میتواند به شما کمک کند تا کدهای تمیزتر و پایدارتر بنویسید و با خطاهای کمتری مواجه شوید. 🛠🔍
🔻برای نکته های بیشتر اینجا کلیک کن
#پایتون #برنامهنویسی #آموزش_پایتون #تابعها #توسعه_دهنده #نکات_برنامهنویسی
یکی از نکات بسیار مهم در کار با توابع در پایتون که میتواند به شما کمک کند تا با خطاهای کمتری مواجه شوید، استفاده از آرگومانهای پیشفرض (Default Arguments) است. 🌟
آرگومانهای پیشفرض در پایتون
در پایتون، شما میتوانید برای آرگومانهای یک تابع مقدار پیشفرض تعیین کنید. این کار باعث میشود که اگر هنگام فراخوانی تابع مقداری برای این آرگومانها ارسال نشود، مقدار پیشفرض استفاده شود. 📝🔧
مثال
def greet(name, message="سلام!"):
print(f"{message}, {name}")
# فراخوانی تابع بدون ارسال آرگومان message
greet("علی")
# خروجی: سلام!, علی
# فراخوانی تابع با ارسال آرگومان message
greet("علی", "صبح بخیر")
# خروجی: صبح بخیر, علی
چرا استفاده از آرگومانهای پیشفرض مهم است؟
1. جلوگیری از خطاهای رایج: وقتی شما آرگومانهای پیشفرض تعیین میکنید، در صورتی که برخی از آرگومانها فراموش شوند، کد شما همچنان به درستی کار خواهد کرد و با خطای "آرگومان کافی نیست" مواجه نخواهید شد. 🚫❌
2. افزایش خوانایی و کارایی کد: با استفاده از آرگومانهای پیشفرض، کد شما خواناتر و استفاده از توابع شما راحتتر خواهد شد، به خصوص زمانی که توابع پیچیدهتری دارید. 📖✨
3. انعطافپذیری بیشتر: شما میتوانید توابعی بنویسید که در شرایط مختلف و با مقادیر ورودی مختلف به درستی عمل کنند، بدون اینکه نیاز باشد چندین تابع مختلف برای شرایط متفاوت تعریف کنید. 🎛🔄
این نکته ساده اما قدرتمند میتواند به شما کمک کند تا کدهای تمیزتر و پایدارتر بنویسید و با خطاهای کمتری مواجه شوید. 🛠🔍
🔻برای نکته های بیشتر اینجا کلیک کن
#پایتون #برنامهنویسی #آموزش_پایتون #تابعها #توسعه_دهنده #نکات_برنامهنویسی
Telegram
Python3
🎓 آموزش و پروژههای Python
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍1
📰 اخبار داغ از تورنومنتهای برنامهنویسی در ایران!
1. مسابقات برنامهنویسی دانشجویی ایران (ACM ICPC):
- این مسابقات یکی از معتبرترین رقابتهای برنامهنویسی در ایران و جهان است. تیمهای شرکتکننده در این مسابقات باید مسائل پیچیدهی الگوریتمی را در زمان محدود حل کنند. برگزاری این مسابقات به صورت منطقهای و ملی انجام میشود و تیمهای برتر به مسابقات جهانی راه مییابند.
2. مسابقات برنامهنویسی CodeCup:
- CodeCup که توسط دانشگاه شریف برگزار میشود، شامل چالشهای الگوریتمی و برنامهنویسی است که باید در مدت زمان مشخص حل شوند. این مسابقات به صورت آنلاین برگزار میشود و شرکتکنندگان از سراسر ایران میتوانند در آن شرکت کنند.
3. مسابقات کدنویسی لیگ کدنویسی ایران (Codeninja):
- Codeninja یک لیگ کدنویسی آنلاین است که در طول سال برگزار میشود. این لیگ شامل مسابقات ماهانه است و شرکتکنندگان با حل مسائل الگوریتمی و برنامهنویسی میتوانند امتیاز کسب کنند. این مسابقات فرصت خوبی برای تمرین مداوم و ارتقاء مهارتهای برنامهنویسی است.
📅 منتظر چه هستید؟ اگر به برنامهنویسی علاقهمندید، حتماً در این مسابقات شرکت کنید و مهارتهای خود را به چالش بکشید! 🖥️🚀
🔻اخبار مهم پایتون در این کانال
#ACM_ICPC #CodeCup #Codeninja #برنامه_نویسی #تورنومنت #ایران #اخبار #TechNews
1. مسابقات برنامهنویسی دانشجویی ایران (ACM ICPC):
- این مسابقات یکی از معتبرترین رقابتهای برنامهنویسی در ایران و جهان است. تیمهای شرکتکننده در این مسابقات باید مسائل پیچیدهی الگوریتمی را در زمان محدود حل کنند. برگزاری این مسابقات به صورت منطقهای و ملی انجام میشود و تیمهای برتر به مسابقات جهانی راه مییابند.
2. مسابقات برنامهنویسی CodeCup:
- CodeCup که توسط دانشگاه شریف برگزار میشود، شامل چالشهای الگوریتمی و برنامهنویسی است که باید در مدت زمان مشخص حل شوند. این مسابقات به صورت آنلاین برگزار میشود و شرکتکنندگان از سراسر ایران میتوانند در آن شرکت کنند.
3. مسابقات کدنویسی لیگ کدنویسی ایران (Codeninja):
- Codeninja یک لیگ کدنویسی آنلاین است که در طول سال برگزار میشود. این لیگ شامل مسابقات ماهانه است و شرکتکنندگان با حل مسائل الگوریتمی و برنامهنویسی میتوانند امتیاز کسب کنند. این مسابقات فرصت خوبی برای تمرین مداوم و ارتقاء مهارتهای برنامهنویسی است.
📅 منتظر چه هستید؟ اگر به برنامهنویسی علاقهمندید، حتماً در این مسابقات شرکت کنید و مهارتهای خود را به چالش بکشید! 🖥️🚀
🔻اخبار مهم پایتون در این کانال
#ACM_ICPC #CodeCup #Codeninja #برنامه_نویسی #تورنومنت #ایران #اخبار #TechNews
Telegram
Python3
🎓 آموزش و پروژههای Python
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
📰 اخبار مهم امروز از دنیای پایتون!
1. انتشار نسخه جدید پایتون 3.12.0:
- نسخه جدید پایتون با ویژگیهای بهبود یافته و رفع باگهای مختلف منتشر شد. این نسخه شامل بهبود عملکرد، ارتقاء قابلیتهای تایپینگ، و اضافه شدن امکانات جدید به استاندارد لایبرری میباشد. 🌟🐍
2. محبوبیت روزافزون فریمورک FastAPI:
- FastAPI همچنان به رشد محبوبیت خود ادامه میدهد و به یکی از محبوبترین فریمورکهای پایتون برای ساخت APIهای سریع و کارا تبدیل شده است. توسعهدهندگان از سرعت و کارایی بالای این فریمورک بسیار راضی هستند. 🚀📈
3. انتشار Pandas 2.0 با قابلیتهای جدید:
- تیم توسعه Pandas نسخه 2.0 این لایبرری محبوب دادهکاوی را منتشر کردند. این نسخه شامل بهبودهای عمده در عملکرد و امکانات جدید برای تجزیه و تحلیل دادهها است. 📊🐼
4. شروع کارگاههای آموزشی Django در دانشگاههای ایران:
- چندین دانشگاه در ایران کارگاههای آموزشی فریمورک Django را برای دانشجویان و علاقهمندان برگزار کردهاند. این کارگاهها فرصتی عالی برای یادگیری و توسعه مهارتهای وب است. 🏫🌐
5. استفاده از پایتون در پروژههای بزرگ داده کاوی:
- شرکتهای بزرگ تکنولوژی در حال استفاده گسترده از پایتون در پروژههای دادهکاوی خود هستند. پایتون به دلیل کتابخانههای قدرتمند مانند NumPy و SciPy انتخاب اول بسیاری از دانشمندان داده است. 🧠💾
6. افزایش تقاضا برای توسعهدهندگان پایتون در بازار کار:
- بازار کار برای توسعهدهندگان پایتون بسیار داغ است و تقاضا برای این مهارتها همچنان در حال افزایش است. پایتون به عنوان یک زبان چند منظوره و قدرتمند، در صنایع مختلف مورد استفاده قرار میگیرد. 💼📈
7. پروژههای متنباز پایتون همچنان در حال رشد:
- تعداد پروژههای متنباز مبتنی بر پایتون روز به روز در حال افزایش است. این پروژهها شامل ابزارها و کتابخانههای جدید برای توسعهدهندگان و محققان است. 🌍🔓
🔻اخبار مهم پایتون اینجا هست کلیک کن
#Python #پایتون #اخبار_تکنولوژی #FastAPI #Pandas #Django #داده_کاوی #بازار_کار #پروژه_متن_باز
1. انتشار نسخه جدید پایتون 3.12.0:
- نسخه جدید پایتون با ویژگیهای بهبود یافته و رفع باگهای مختلف منتشر شد. این نسخه شامل بهبود عملکرد، ارتقاء قابلیتهای تایپینگ، و اضافه شدن امکانات جدید به استاندارد لایبرری میباشد. 🌟🐍
2. محبوبیت روزافزون فریمورک FastAPI:
- FastAPI همچنان به رشد محبوبیت خود ادامه میدهد و به یکی از محبوبترین فریمورکهای پایتون برای ساخت APIهای سریع و کارا تبدیل شده است. توسعهدهندگان از سرعت و کارایی بالای این فریمورک بسیار راضی هستند. 🚀📈
3. انتشار Pandas 2.0 با قابلیتهای جدید:
- تیم توسعه Pandas نسخه 2.0 این لایبرری محبوب دادهکاوی را منتشر کردند. این نسخه شامل بهبودهای عمده در عملکرد و امکانات جدید برای تجزیه و تحلیل دادهها است. 📊🐼
4. شروع کارگاههای آموزشی Django در دانشگاههای ایران:
- چندین دانشگاه در ایران کارگاههای آموزشی فریمورک Django را برای دانشجویان و علاقهمندان برگزار کردهاند. این کارگاهها فرصتی عالی برای یادگیری و توسعه مهارتهای وب است. 🏫🌐
5. استفاده از پایتون در پروژههای بزرگ داده کاوی:
- شرکتهای بزرگ تکنولوژی در حال استفاده گسترده از پایتون در پروژههای دادهکاوی خود هستند. پایتون به دلیل کتابخانههای قدرتمند مانند NumPy و SciPy انتخاب اول بسیاری از دانشمندان داده است. 🧠💾
6. افزایش تقاضا برای توسعهدهندگان پایتون در بازار کار:
- بازار کار برای توسعهدهندگان پایتون بسیار داغ است و تقاضا برای این مهارتها همچنان در حال افزایش است. پایتون به عنوان یک زبان چند منظوره و قدرتمند، در صنایع مختلف مورد استفاده قرار میگیرد. 💼📈
7. پروژههای متنباز پایتون همچنان در حال رشد:
- تعداد پروژههای متنباز مبتنی بر پایتون روز به روز در حال افزایش است. این پروژهها شامل ابزارها و کتابخانههای جدید برای توسعهدهندگان و محققان است. 🌍🔓
🔻اخبار مهم پایتون اینجا هست کلیک کن
#Python #پایتون #اخبار_تکنولوژی #FastAPI #Pandas #Django #داده_کاوی #بازار_کار #پروژه_متن_باز
Telegram
Python3
🎓 آموزش و پروژههای Python
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍3
🔤 آموزش کامل متدهای کار با رشتهها در پایتون 🔤
سلام دوستان! امروز قصد دارم دربارهی متدهای مختلف کار با رشتهها در زبان برنامهنویسی پایتون صحبت کنم. رشتهها یکی از پرکاربردترین نوع دادهها در پایتون هستند و آشنایی با متدهای آنها میتواند کدنویسی را بسیار سادهتر کند. بیایید شروع کنیم! 🚀
1.
این متد تمام حروف رشته را به حروف کوچک تبدیل میکند.
2.
این متد تمام حروف رشته را به حروف بزرگ تبدیل میکند.
3.
این متد حرف اول رشته را به حروف بزرگ و بقیه را به حروف کوچک تبدیل میکند.
4.
این متد حرف اول هر کلمه در رشته را به حروف بزرگ تبدیل میکند.
5.
این متد فاصلههای خالی در ابتدای و انتهای رشته را حذف میکند.
6.
این متد بررسی میکند که آیا رشته با زیررشتهی خاصی شروع میشود یا نه.
7.
این متد بررسی میکند که آیا رشته با زیررشتهی خاصی پایان مییابد یا نه.
8.
این متد یک زیررشته را با زیررشتهای دیگر در رشته جایگزین میکند.
9.
این متد رشته را بر اساس یک جداکننده خاص جدا کرده و به لیست تبدیل میکند.
10.
این متد عناصر یک لیست را با استفاده از یک جداکننده خاص به یکدیگر متصل میکند.
11.
این متد اولین موقعیت یک زیررشته را در رشته پیدا میکند. اگر زیررشته وجود نداشته باشد، -1 برمیگرداند.
12.
این متد اولین موقعیت یک زیررشته را در رشته پیدا میکند. اگر زیررشته وجود نداشته باشد، خطا برمیگرداند.
13.
این متد تعداد تکرار یک زیررشته در رشته را شمارش میکند.
14.
این متد بررسی میکند که آیا همه کاراکترهای رشته اعداد هستند یا نه.
15.
این متد طول رشته را به طول مشخصی میرساند و با اضافه کردن صفر از سمت چپ، رشته را پر میکند.
16.
این متد حروف بزرگ را به کوچک و حروف کوچک را به بزرگ تبدیل میکند.
17.
این متد رشتهها را با استفاده از جایگزینی قالببندی میکند.
18.
این متد رشته را به طول مشخصی میرساند و از سمت چپ با کاراکتر خاصی پر میکند.
19.
این متد رشته را به طول مشخصی میرساند و از سمت راست با کاراکتر خاصی پر میکند.
این هم از متدهای کار با رشتهها در پایتون! امیدوارم این آموزش براتون مفید باشه و ازش استفاده کنید. هر سوالی داشتید، حتما بپرسید. 😊✨
🔻برای بیشتر یاد گرفتن اینجا کلیک کن
#Python #Programming #Coding #Strings #Learning #PythonTips
سلام دوستان! امروز قصد دارم دربارهی متدهای مختلف کار با رشتهها در زبان برنامهنویسی پایتون صحبت کنم. رشتهها یکی از پرکاربردترین نوع دادهها در پایتون هستند و آشنایی با متدهای آنها میتواند کدنویسی را بسیار سادهتر کند. بیایید شروع کنیم! 🚀
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
این هم از متدهای کار با رشتهها در پایتون! امیدوارم این آموزش براتون مفید باشه و ازش استفاده کنید. هر سوالی داشتید، حتما بپرسید. 😊✨
🔻برای بیشتر یاد گرفتن اینجا کلیک کن
#Python #Programming #Coding #Strings #Learning #PythonTips
ساخت کلاس و متدها در پایتون
ابتدا یک کلاس ساده به نام
توضیحشin
-
-
-
-
استفاده از کلاس و متدها
حال میتوانیم از کلاس
توضیحش
- با استفاده از
- سپس متدهای مختلف را با استفاده از
نکات مهم
1. متدهای یک کلاس همیشه باید حداقل یک پارامتر داشته باشند که به طور معمول
2. شما میتوانید متدهای کلاس را برای انجام هر عملیاتی که میخواهید تعریف کنید. این متدها میتوانند پارامترهای اضافی داشته باشند و هر عملیاتی را که نیاز دارید انجام دهند.
امیدوارم این آموزش به شما کمک کرده باشد که بفهمید چطور میتوانید متدهای خود را در پایتون تعریف کنید و از آنها استفاده کنید. هر سوالی داشتید، حتماً بپرسید! 😊✨
🔻برای بیشتر یاد گرفتن اینجا کلیک کن
#Python #Programming #OOP #Methods #Learning #PythonTips
ابتدا یک کلاس ساده به نام
Car
تعریف میکنیم و چند متد برای آن ایجاد میکنیم.class Car:
def __init__(self, brand, model, year):
self.brand = brand
self.model = model
self.year = year
def start_engine(self):
print(f"The engine of the {self.brand} {self.model} is now running.")
def stop_engine(self):
print(f"The engine of the {self.brand} {self.model} has been turned off.")
def honk(self):
print("Beep beep!")
def display_info(self):
print(f"Car Info: {self.brand} {self.model}, Year: {self.year}")
توضیحشin
itit__ ی
ک متد ویژه است که به عنوان سازنده (constructor) کلاس عمل میکند و هنگام ایجاد یک شیء از کلاس فراخوانی میشود. این متد برای مقداردهی اولیه به متغیرهای نمونه (instance variables) استفاده میشود.-
start_engine
یک متد معمولی است که پیام شروع به کار موتور را چاپ میکند.-
stop_engine
یک متد معمولی است که پیام خاموش شدن موتور را چاپ میکند.-
honk
یک متد معمولی است که صدای بوق را چاپ میکند.-
display_info
یک متد معمولی است که اطلاعات خودرو را چاپ میکند.استفاده از کلاس و متدها
حال میتوانیم از کلاس
Car
استفاده کنیم و متدهای آن را فراخوانی کنیم.if __name__ == "__main__":
my_car = Car("Toyota", "Corolla", 2020)
my_car.start_engine() # خروجی: The engine of the Toyota Corolla is now running.
my_car.honk() # خروجی: Beep beep!
my_car.display_info() # خروجی: Car Info: Toyota Corolla, Year: 2020
my_car.stop_engine() # خروجی: The engine of the Toyota Corolla has been turned off.
توضیحش
- با استفاده از
Car("Toyota", "Corolla", 2020)
یک شیء جدید از کلاس Car
با نام my_car
ایجاد میکنیم.- سپس متدهای مختلف را با استفاده از
my_car
فراخوانی میکنیم.نکات مهم
1. متدهای یک کلاس همیشه باید حداقل یک پارامتر داشته باشند که به طور معمول
self
نامیده میشود. این پارامتر به شیء فعلی اشاره دارد.2. شما میتوانید متدهای کلاس را برای انجام هر عملیاتی که میخواهید تعریف کنید. این متدها میتوانند پارامترهای اضافی داشته باشند و هر عملیاتی را که نیاز دارید انجام دهند.
امیدوارم این آموزش به شما کمک کرده باشد که بفهمید چطور میتوانید متدهای خود را در پایتون تعریف کنید و از آنها استفاده کنید. هر سوالی داشتید، حتماً بپرسید! 😊✨
🔻برای بیشتر یاد گرفتن اینجا کلیک کن
#Python #Programming #OOP #Methods #Learning #PythonTips
Telegram
Python3
🎓 آموزش و پروژههای Python
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍3
سلام دوستان ، ببخشید فعالیت کم شده ، به دلیل اینکه هم من هم مدیر کانال سر کار میریم و وقتی برای پست گذاشتن نداریم ، سعی میکنم براتون ساعت هایی که کار ندارم پست بزارم ، ممنون که درک میکنید❤️
امنیت از طریق عدم شفافیت (Security through Obscurity) در لینوکس 🛡️🐧
یکی از مفاهیم جذاب و بحثبرانگیز در دنیای امنیت اطلاعات، مفهوم "امنیت از طریق عدم شفافیت" (Security through Obscurity) است. این روش به معنای پنهان کردن جزئیات سیستم به منظور افزایش امنیت است. در این مطلب به بررسی این مفهوم در سیستمعامل لینوکس میپردازیم. 🖥️🔍
توضیحات:
- امنیت از طریق عدم شفافیت (Security through Obscurity):
- این رویکرد بر این اصل استوار است که با پنهان کردن اطلاعات، احتمال کشف و بهرهبرداری از نقاط ضعف کاهش مییابد.
- به طور خاص، این روش به جای اصلاح مشکلات امنیتی، تلاش میکند تا دسترسی به اطلاعات حساس را محدود کند.
مثالهایی از استفاده در لینوکس:
1. پنهان کردن نسخه هسته (Kernel) لینوکس:
- در بسیاری از توزیعهای لینوکس، نسخه دقیق هسته در فایل
- با پنهان کردن یا تغییر این اطلاعات، دسترسی به اطلاعاتی که ممکن است به هکرها کمک کند، کاهش مییابد.
2. پیکربندی SSH:
- در فایل تنظیمات SSH، میتوانید نسخه نرمافزار SSH و بنر خوشآمدگویی را تغییر دهید تا اطلاعات کمتر قابل دسترس باشد.
3. پنهان کردن سرویسها:
- پنهان کردن سرویسهای در حال اجرا از طریق پیکربندی فایروال و ابزارهای نظارتی مثل
مزایا و معایب:
- مزایا:
- کاهش سطح دسترسی به اطلاعات حساس.
- کاهش احتمال حملات خودکار.
- معایب:
- ایجاد یک حس کاذب از امنیت.
- عدم توانایی در جایگزینی روشهای امنیتی اساسی.
نتیجهگیری:
"امنیت از طریق عدم شفافیت" یک لایه اضافی از امنیت فراهم میکند، اما نباید به عنوان تنها روش امنیتی مورد استفاده قرار گیرد. استفاده از روشهای امنیتی قویتر مانند بهروزرسانی مداوم، پیکربندی صحیح و نظارت مداوم بر سیستمها نیز ضروری است. 🛡️🔒
🔻برای دونستن چیزای بیشتر اینجا کلیک کن
#امنیت #لینوکس #آموزش_برنامه_نویسی #سیستم_عامل #امنیت_شبکه #پروژه_های_پایتون
یکی از مفاهیم جذاب و بحثبرانگیز در دنیای امنیت اطلاعات، مفهوم "امنیت از طریق عدم شفافیت" (Security through Obscurity) است. این روش به معنای پنهان کردن جزئیات سیستم به منظور افزایش امنیت است. در این مطلب به بررسی این مفهوم در سیستمعامل لینوکس میپردازیم. 🖥️🔍
توضیحات:
- امنیت از طریق عدم شفافیت (Security through Obscurity):
- این رویکرد بر این اصل استوار است که با پنهان کردن اطلاعات، احتمال کشف و بهرهبرداری از نقاط ضعف کاهش مییابد.
- به طور خاص، این روش به جای اصلاح مشکلات امنیتی، تلاش میکند تا دسترسی به اطلاعات حساس را محدود کند.
مثالهایی از استفاده در لینوکس:
1. پنهان کردن نسخه هسته (Kernel) لینوکس:
- در بسیاری از توزیعهای لینوکس، نسخه دقیق هسته در فایل
/proc/version
قابل مشاهده است.- با پنهان کردن یا تغییر این اطلاعات، دسترسی به اطلاعاتی که ممکن است به هکرها کمک کند، کاهش مییابد.
echo "kernel_version_string" > /proc/version
2. پیکربندی SSH:
- در فایل تنظیمات SSH، میتوانید نسخه نرمافزار SSH و بنر خوشآمدگویی را تغییر دهید تا اطلاعات کمتر قابل دسترس باشد.
# در فایل sshd_config
Banner /etc/issue.net
# در فایل issue.net
Unauthorized access is prohibited
3. پنهان کردن سرویسها:
- پنهان کردن سرویسهای در حال اجرا از طریق پیکربندی فایروال و ابزارهای نظارتی مثل
netstat
و lsof
.# استفاده از iptables برای فیلتر کردن پورتها
iptables -A INPUT -p tcp --dport 22 -j DROP
مزایا و معایب:
- مزایا:
- کاهش سطح دسترسی به اطلاعات حساس.
- کاهش احتمال حملات خودکار.
- معایب:
- ایجاد یک حس کاذب از امنیت.
- عدم توانایی در جایگزینی روشهای امنیتی اساسی.
نتیجهگیری:
"امنیت از طریق عدم شفافیت" یک لایه اضافی از امنیت فراهم میکند، اما نباید به عنوان تنها روش امنیتی مورد استفاده قرار گیرد. استفاده از روشهای امنیتی قویتر مانند بهروزرسانی مداوم، پیکربندی صحیح و نظارت مداوم بر سیستمها نیز ضروری است. 🛡️🔒
🔻برای دونستن چیزای بیشتر اینجا کلیک کن
#امنیت #لینوکس #آموزش_برنامه_نویسی #سیستم_عامل #امنیت_شبکه #پروژه_های_پایتون
👍4
پارت ۱۵: پروژه ۱ - مدیریت مخاطبین 📞📝
در این پارت، یک پروژه عملی برای مدیریت مخاطبین را پیادهسازی میکنیم. هدف این پروژه آشنایی با مفاهیم پایهای مانند کار با فایلها، دیکشنریها، و توابع است.
۱. تعریف ساختار پروژه
این پروژه شامل قابلیتهای زیر خواهد بود:
- اضافه کردن مخاطب جدید
- نمایش لیست مخاطبین
- جستجو در مخاطبین
- حذف مخاطب
- ذخیره و بازیابی مخاطبین در فایل
۲. ایجاد فایل اصلی پروژه
ابتدا فایل اصلی پروژه را ایجاد کنید و ساختار اولیه آن را پیادهسازی کنید.
۳. توضیحات هر تابع
- تابع
- تابع
- تابع
- تابع
- تابع
- تابع
- تابع
۴. نکات مهم
- مدیریت فایل: برای ذخیره و بارگذاری مخاطبین از فایل JSON استفاده شده است تا بتوانیم دادهها را بین اجراهای مختلف برنامه حفظ کنیم.
- پیشگیری از خطا: در حذف مخاطب، اطمینان حاصل میشود که شماره وارد شده معتبر است.
- تعامل با کاربر: اطلاعات مخاطب را از ورودی کاربر گرفته و نتیجه عملیات را به کاربر نمایش میدهد.
🔻اینجا کلیک کن برای آموزش های بیشتر
#پایتون #آموزش_پایتون #پروژه_پایتون #مدیریت_مخاطبین #PythonProjects #ContactsManagement
در این پارت، یک پروژه عملی برای مدیریت مخاطبین را پیادهسازی میکنیم. هدف این پروژه آشنایی با مفاهیم پایهای مانند کار با فایلها، دیکشنریها، و توابع است.
۱. تعریف ساختار پروژه
این پروژه شامل قابلیتهای زیر خواهد بود:
- اضافه کردن مخاطب جدید
- نمایش لیست مخاطبین
- جستجو در مخاطبین
- حذف مخاطب
- ذخیره و بازیابی مخاطبین در فایل
۲. ایجاد فایل اصلی پروژه
ابتدا فایل اصلی پروژه را ایجاد کنید و ساختار اولیه آن را پیادهسازی کنید.
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 استفاده شده است تا بتوانیم دادهها را بین اجراهای مختلف برنامه حفظ کنیم.
- پیشگیری از خطا: در حذف مخاطب، اطمینان حاصل میشود که شماره وارد شده معتبر است.
- تعامل با کاربر: اطلاعات مخاطب را از ورودی کاربر گرفته و نتیجه عملیات را به کاربر نمایش میدهد.
🔻اینجا کلیک کن برای آموزش های بیشتر
#پایتون #آموزش_پایتون #پروژه_پایتون #مدیریت_مخاطبین #PythonProjects #ContactsManagement
👍2
پارت ۱۶: پروژه ۲ - ماشین حساب پیشرفته 🧮✨
در این پارت، یک ماشین حساب پیشرفته را با استفاده از پایتون پیادهسازی میکنیم که قابلیت انجام عملیات پایهای و پیشرفته ریاضی را دارد.
۱. تعریف ساختار پروژه
این پروژه شامل قابلیتهای زیر خواهد بود:
- انجام عملیات جمع، تفریق، ضرب و تقسیم
- محاسبه توان و ریشه
- انجام محاسبات مثلثاتی (سینوس، کسینوس و تانژانت)
- استفاده از توابع لگاریتم و نمایی
۲. ایجاد فایل اصلی پروژه
ابتدا فایل اصلی پروژه را ایجاد کنید و ساختار اولیه آن را پیادهسازی کنید.
۳. توضیحات هر تابع
- توابع عملیات پایهای:
- توابع عملیات پیشرفته:
- توابع مثلثاتی:
- توابع لگاریتم و نمایی:
- تابع
- تابع
در این پارت، یک ماشین حساب پیشرفته را با استفاده از پایتون پیادهسازی میکنیم که قابلیت انجام عملیات پایهای و پیشرفته ریاضی را دارد.
۱. تعریف ساختار پروژه
این پروژه شامل قابلیتهای زیر خواهد بود:
- انجام عملیات جمع، تفریق، ضرب و تقسیم
- محاسبه توان و ریشه
- انجام محاسبات مثلثاتی (سینوس، کسینوس و تانژانت)
- استفاده از توابع لگاریتم و نمایی
۲. ایجاد فایل اصلی پروژه
ابتدا فایل اصلی پروژه را ایجاد کنید و ساختار اولیه آن را پیادهسازی کنید.
import math
def add(x, y):
return x + y
def subtract(x, y):
return x - y
def multiply(x, y):
return x * y
def divide(x, y):
if y == 0:
return "تقسیم بر صفر امکانپذیر نیست!"
return x / y
def power(x, y):
return x ** y
def sqrt(x):
if x < 0:
return "جذر عدد منفی امکانپذیر نیست!"
return math.sqrt(x)
def sine(x):
return math.sin(math.radians(x))
def cosine(x):
return math.cos(math.radians(x))
def tangent(x):
return math.tan(math.radians(x))
def logarithm(x, base=10):
if x <= 0:
return "لگاریتم عدد صفر یا منفی امکانپذیر نیست!"
return math.log(x, base)
def exponential(x):
return math.exp(x)
def display_menu():
print("\nماشین حساب پیشرفته:")
print("1. جمع")
print("2. تفریق")
print("3. ضرب")
print("4. تقسیم")
print("5. توان")
print("6. جذر")
print("7. سینوس")
print("8. کسینوس")
print("9. تانژانت")
print("10. لگاریتم")
print("11. نمایی")
print("12. خروج")
def main():
while True:
display_menu()
choice = input("انتخاب شما: ")
if choice == '1':
x = float(input("عدد اول: "))
y = float(input("عدد دوم: "))
print(f"نتیجه: {add(x, y)}")
elif choice == '2':
x = float(input("عدد اول: "))
y = float(input("عدد دوم: "))
print(f"نتیجه: {subtract(x, y)}")
elif choice == '3':
x = float(input("عدد اول: "))
y = float(input("عدد دوم: "))
print(f"نتیجه: {multiply(x, y)}")
elif choice == '4':
x = float(input("عدد اول: "))
y = float(input("عدد دوم: "))
print(f"نتیجه: {divide(x, y)}")
elif choice == '5':
x = float(input("عدد اول: "))
y = float(input("توان: "))
print(f"نتیجه: {power(x, y)}")
elif choice == '6':
x = float(input("عدد: "))
print(f"نتیجه: {sqrt(x)}")
elif choice == '7':
x = float(input("زاویه (درجه): "))
print(f"نتیجه: {sine(x)}")
elif choice == '8':
x = float(input("زاویه (درجه): "))
print(f"نتیجه: {cosine(x)}")
elif choice == '9':
x = float(input("زاویه (درجه): "))
print(f"نتیجه: {tangent(x)}")
elif choice == '10':
x = float(input("عدد: "))
base = float(input("پایه (پیشفرض 10): ") or 10)
print(f"نتیجه: {logarithm(x, base)}")
elif choice == '11':
x = float(input("عدد: "))
print(f"نتیجه: {exponential(x)}")
elif choice == '12':
print("خروج از ماشین حساب...")
break
else:
print("انتخاب نامعتبر است.")
if __name__ == '__main__':
main()
۳. توضیحات هر تابع
- توابع عملیات پایهای:
add
, subtract
, multiply
, divide
برای انجام عملیات جمع، تفریق، ضرب و تقسیم.- توابع عملیات پیشرفته:
power
, sqrt
برای محاسبه توان و جذر.- توابع مثلثاتی:
sine
, cosine
, tangent
برای محاسبات مثلثاتی.- توابع لگاریتم و نمایی:
logarithm
, exponential
برای انجام محاسبات لگاریتمی و نمایی.- تابع
display_menu
: نمایش منوی اصلی.- تابع
main
: حلقه اصلی برنامه که منوی اصلی را نمایش داده و انتخاب کاربر را مدیریت میکند.👍1
۴. نکات مهم
- مدیریت خطاها: در توابع
- ورودی کاربر: برنامه از کاربر مقادیر ورودی را دریافت کرده و نتیجه محاسبات را نمایش میدهد.
- تابع
🔻برای آموزش های بیشتر اینجا کلیک کن
#پایتون #آموزش_پایتون #پروژه_پایتون #ماشین_حساب #PythonProjects #AdvancedCalculator
- مدیریت خطاها: در توابع
divide
, sqrt
و logarithm
برای جلوگیری از وقوع خطاها، بررسیهای لازم انجام شده است.- ورودی کاربر: برنامه از کاربر مقادیر ورودی را دریافت کرده و نتیجه محاسبات را نمایش میدهد.
- تابع
math
: برای انجام محاسبات پیچیدهتر از کتابخانه math
استفاده شده است.🔻برای آموزش های بیشتر اینجا کلیک کن
#پایتون #آموزش_پایتون #پروژه_پایتون #ماشین_حساب #PythonProjects #AdvancedCalculator
👍1
تشابهات زبان پایتون و C 🐍💻
سلام دوستان! امروز قصد دارم در مورد تشابهات بین دو زبان برنامهنویسی محبوب، پایتون و C صحبت کنم. هر دو زبان در دنیای برنامهنویسی بسیار مهم هستند و هر کدام ویژگیهای خاص خودشون رو دارند. در ادامه به برخی از تشابهات این دو زبان اشاره میکنم.
1. مفاهیم پایهای مشترک 📚
هر دو زبان پایتون و C از مفاهیم پایهای برنامهنویسی مانند متغیرها، توابع و ساختارهای کنترلی (if، for، while) استفاده میکنند. این مفاهیم پایهای در بیشتر زبانهای برنامهنویسی مشترک هستند و یادگیری یکی از این زبانها میتواند به یادگیری زبان دیگر کمک کند.
2. مدیریت حافظه 🔄
اگرچه مدیریت حافظه در C به صورت دستی انجام میشود (با استفاده از
3. استفاده از کتابخانهها 📚
هر دو زبان از کتابخانهها برای گسترش قابلیتها و انجام کارهای خاص استفاده میکنند. در C، کتابخانههای استاندارد مانند
4. استفاده در سیستمعاملها و توسعه سیستمهای نرمافزاری 🖥️
C به عنوان یکی از زبانهای پایهای برای نوشتن سیستمعاملها و نرمافزارهای سیستمی شناخته میشود. بسیاری از سیستمعاملها مانند Unix و Linux با استفاده از C نوشته شدهاند. از سوی دیگر، پایتون نیز به دلیل سادگی و قدرتش در توسعه اسکریپتها و ابزارهای مدیریتی سیستمعاملها به کار میرود.
5. قابلیتهای پردازش رشتهها 📝
هر دو زبان قابلیتهای قدرتمندی برای پردازش رشتهها دارند. در C، پردازش رشتهها با استفاده از آرایههای کاراکتر و توابع کتابخانهای مانند
6. پشتیبانی از توابع 📜
هر دو زبان پایتون و C از توابع برای سازماندهی و کپسولهسازی کد استفاده میکنند. توابع در هر دو زبان میتوانند ورودی بگیرند، خروجی بدهند و کدهای پیچیده را به بخشهای کوچکتر و قابل مدیریتتر تقسیم کنند.
امیدوارم این معرفی کوتاه از تشابهات پایتون و C برای شما مفید باشه! اگر سوالی دارید یا نکتهای هست که دوست دارید بیشتر بدونید، در نظرات بپرسید. 😊
🔻آموزش های بیشتر اینجاست
#پایتون #C #برنامه_نویسی #آموزش_برنامه_نویسی #تشابهات_زبان_های_برنامه_نویسی
سلام دوستان! امروز قصد دارم در مورد تشابهات بین دو زبان برنامهنویسی محبوب، پایتون و C صحبت کنم. هر دو زبان در دنیای برنامهنویسی بسیار مهم هستند و هر کدام ویژگیهای خاص خودشون رو دارند. در ادامه به برخی از تشابهات این دو زبان اشاره میکنم.
1. مفاهیم پایهای مشترک 📚
هر دو زبان پایتون و C از مفاهیم پایهای برنامهنویسی مانند متغیرها، توابع و ساختارهای کنترلی (if، for، while) استفاده میکنند. این مفاهیم پایهای در بیشتر زبانهای برنامهنویسی مشترک هستند و یادگیری یکی از این زبانها میتواند به یادگیری زبان دیگر کمک کند.
2. مدیریت حافظه 🔄
اگرچه مدیریت حافظه در C به صورت دستی انجام میشود (با استفاده از
malloc
و free
)، پایتون نیز از مدیریت حافظه استفاده میکند، اما به صورت خودکار. در پایتون، مدیریت حافظه با استفاده از سیستم جمعآوری زباله (Garbage Collection) انجام میشود. در هر دو زبان، اهمیت مدیریت بهینه حافظه به منظور جلوگیری از نشتی حافظه و بهبود عملکرد برنامه وجود دارد.3. استفاده از کتابخانهها 📚
هر دو زبان از کتابخانهها برای گسترش قابلیتها و انجام کارهای خاص استفاده میکنند. در C، کتابخانههای استاندارد مانند
stdio.h
و math.h
برای ورودی/خروجی و محاسبات ریاضی استفاده میشوند. در پایتون، کتابخانههای استاندارد و شخص ثالث زیادی مانند math
، numpy
و pandas
وجود دارند که برای انجام کارهای مختلف به کار میروند.4. استفاده در سیستمعاملها و توسعه سیستمهای نرمافزاری 🖥️
C به عنوان یکی از زبانهای پایهای برای نوشتن سیستمعاملها و نرمافزارهای سیستمی شناخته میشود. بسیاری از سیستمعاملها مانند Unix و Linux با استفاده از C نوشته شدهاند. از سوی دیگر، پایتون نیز به دلیل سادگی و قدرتش در توسعه اسکریپتها و ابزارهای مدیریتی سیستمعاملها به کار میرود.
5. قابلیتهای پردازش رشتهها 📝
هر دو زبان قابلیتهای قدرتمندی برای پردازش رشتهها دارند. در C، پردازش رشتهها با استفاده از آرایههای کاراکتر و توابع کتابخانهای مانند
strcpy
و strlen
انجام میشود. در پایتون، پردازش رشتهها با استفاده از کلاس str
و متدهای متعدد آن انجام میشود که کار با رشتهها را بسیار سادهتر میکند.6. پشتیبانی از توابع 📜
هر دو زبان پایتون و C از توابع برای سازماندهی و کپسولهسازی کد استفاده میکنند. توابع در هر دو زبان میتوانند ورودی بگیرند، خروجی بدهند و کدهای پیچیده را به بخشهای کوچکتر و قابل مدیریتتر تقسیم کنند.
امیدوارم این معرفی کوتاه از تشابهات پایتون و C برای شما مفید باشه! اگر سوالی دارید یا نکتهای هست که دوست دارید بیشتر بدونید، در نظرات بپرسید. 😊
🔻آموزش های بیشتر اینجاست
#پایتون #C #برنامه_نویسی #آموزش_برنامه_نویسی #تشابهات_زبان_های_برنامه_نویسی
Telegram
Python3
🎓 آموزش و پروژههای Python
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍8
آموزش استفاده از متدهای کاربردی پایتون برای مدیریت تاریخ و زمان 📅🕒
سلام دوستان! امروز قصد داریم در مورد مدیریت تاریخ و زمان با پایتون صحبت کنیم. این موضوع میتواند برای بسیاری از برنامههای کاربردی مهم باشد، از جمله برنامههای مالی، برنامههای ردیابی فعالیتها، و بسیاری موارد دیگر. بیایید با هم یاد بگیریم! 😊
1. وارد کردن کتابخانه datetime 📚
ابتدا کتابخانه
2. دریافت تاریخ و زمان فعلی 🕒
برای دریافت تاریخ و زمان فعلی، از متد
3. قالببندی تاریخ و زمان ⏰
میتوانیم تاریخ و زمان را به فرمتهای مختلف قالببندی کنیم. برای مثال:
4. کار با زمانهای دلخواه ⏳
برای ایجاد یک زمان دلخواه، از کلاس
5. محاسبات زمانی 🕰️
میتوانیم با استفاده از
6. تبدیل رشته به تاریخ و زمان 🔄
میتوانیم رشتههای متنی را به تاریخ و زمان تبدیل کنیم:
7. استفاده از کتابخانه pytz برای منطقههای زمانی 🌍
کتابخانه
8. جمعبندی 📜
مدیریت تاریخ و زمان در پایتون با استفاده از کتابخانههای
🔻آموزش های مفید بیشتر تو این کانال
#پایتون #برنامه_نویسی #تاریخ_زمان #مدیریت_زمان #آموزش #کتابخانه #datetime #pytz
سلام دوستان! امروز قصد داریم در مورد مدیریت تاریخ و زمان با پایتون صحبت کنیم. این موضوع میتواند برای بسیاری از برنامههای کاربردی مهم باشد، از جمله برنامههای مالی، برنامههای ردیابی فعالیتها، و بسیاری موارد دیگر. بیایید با هم یاد بگیریم! 😊
1. وارد کردن کتابخانه datetime 📚
ابتدا کتابخانه
datetime
را وارد میکنیم:import datetime
2. دریافت تاریخ و زمان فعلی 🕒
برای دریافت تاریخ و زمان فعلی، از متد
datetime.now()
استفاده میکنیم:now = datetime.datetime.now()
print("Current date and time:", now)
3. قالببندی تاریخ و زمان ⏰
میتوانیم تاریخ و زمان را به فرمتهای مختلف قالببندی کنیم. برای مثال:
formatted_date = now.strftime("%Y-%m-%d")
formatted_time = now.strftime("%H:%M:%S")
print("Formatted date:", formatted_date)
print("Formatted time:", formatted_time)
4. کار با زمانهای دلخواه ⏳
برای ایجاد یک زمان دلخواه، از کلاس
datetime
استفاده میکنیم:specific_date = datetime.datetime(2023, 7, 5, 15, 30, 0)
print("Specific date and time:", specific_date)
5. محاسبات زمانی 🕰️
میتوانیم با استفاده از
timedelta
محاسبات زمانی انجام دهیم. برای مثال، افزودن یا کاهش یک بازه زمانی به یک تاریخ مشخص:future_date = now + datetime.timedelta(days=10)
past_date = now - datetime.timedelta(days=10)
print("Date 10 days in the future:", future_date)
print("Date 10 days in the past:", past_date)
6. تبدیل رشته به تاریخ و زمان 🔄
میتوانیم رشتههای متنی را به تاریخ و زمان تبدیل کنیم:
date_string = "2024-07-06 14:30:00"
date_object = datetime.datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print("Date object from string:", date_object)
7. استفاده از کتابخانه pytz برای منطقههای زمانی 🌍
کتابخانه
pytz
به ما امکان میدهد که با منطقههای زمانی مختلف کار کنیم:import pytz
# منطقه زمانی UTC
utc = pytz.utc
utc_now = datetime.datetime.now(utc)
print("UTC time:", utc_now)
# منطقه زمانی محلی
local_tz = pytz.timezone("Asia/Tehran")
local_time = utc_now.astimezone(local_tz)
print("Local time in Tehran:", local_time)
8. جمعبندی 📜
مدیریت تاریخ و زمان در پایتون با استفاده از کتابخانههای
datetime
و pytz
بسیار ساده و کاربردی است. با استفاده از این متدها و تکنیکها میتوانید برنامههای خود را بهبود بخشید و مدیریت دقیقی بر روی تاریخ و زمان داشته باشید. امیدوارم این آموزش برای شما مفید باشد!🔻آموزش های مفید بیشتر تو این کانال
#پایتون #برنامه_نویسی #تاریخ_زمان #مدیریت_زمان #آموزش #کتابخانه #datetime #pytz
Telegram
Python3
🎓 آموزش و پروژههای Python
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
آموزشهای کاربردی و پروژههای عملی Python برای همه سطوح. 🚀
👍1