PyCoders (پایتون)
4.57K subscribers
945 photos
137 videos
67 files
195 links
#پایتون جادوگر دنیای برنامه نویسی!
◇ معرفی حوزه های کاری پایتون
◇ معرفی کتابخونه های کاربردی
◇ معرفی دوره های مفید
◇ معرفی تکنیک ها و نکات
◇ نقشه راه حوزه های مختلف
◇ اخبار و آپدیت های پایتون
◇ و هر چیزی در مورد پایتون!

■ گروه پایتون:
@programmers_py
Download Telegram
442_Startup_Failure_Post_Mortems_1680124938.pdf
1.1 MB
✔️ 442 Startup failure Post-Mortems
۴۴۲ استارت‌آپ شکست خورده؛ داستان و علت شکست استارتاپهای مختلف در حوزه‌های هوش مصنوعی، کریپتوکارنسی، سلامت و ...
#مقاله
#هوش‌_مصنوعی
◦•◉✿ @python_rd ✿◉•◦
عملیات های پایه ریاضی در یک نگاه

◦•◉✿ @python_rd ✿◉•◦
در زمینه‌ی آموزش، اینترنت منبع بسیار خوبی است و شما می‌توانید از طریق سایت‌ها و پلتفرم‌های آنلاین به یادگیری موضوعات مختلف بپردازید. البته، بهترین سایت‌ها بستگی به نیاز‌ها و علاقه‌های شما دارد. اما من می‌توانم به شما تعدادی از سایت‌های معروف در زمینه‌ی آموزش را معرفی کنم:

1. Coursera (https://www.coursera.org/): این سایت یکی از بزرگترین پلتفرم‌های آموزش آنلاین است و دسترسی به دوره‌های مختلفی در زمینه‌های مختلف از جمله علوم کامپیوتر، مهندسی، هنر، علوم انسانی و غیره را فراهم می‌کند.

2. Udemy (https://www.udemy.com/): این سایت یکی دیگر از پرطرفدارترین سایت‌های آموزش آنلاین است. شما می‌توانید در اینجا دوره‌هایی در زمینه‌های مختلف را پیدا کنید و به صورت آنلاین آن‌ها را طی کنید.

3. Khan Academy (https://www.khanacademy.org/): این سایت رایگان است و دسترسی به دروسی در زمینه‌های مختلف از جمله ریاضیات، علوم، هنر و غیره را فراهم می‌کند. محتوای آموزشی آن به زبان‌های مختلف نیز موجود است.

4. Codecademy (https://www.codecademy.com/): اگر به برنامه‌نویسی علاقه‌مندید، این سایت برای یادگیری زبان‌های برنامه‌نویسی مختلف مانند Python، JavaScript و غیره بسیار مناسب است.

5. Udacity (https://www.udacity.com/): این سایت نیز دوره‌های آموزشی در زمینه‌های مختلف از جمله مهندسی نرم‌افزار، هوش‌مصنوعی و اندروید را ارائه می‌دهد.

این لیست تنها چند مثال از سایت‌های آموزشی است و هنوز بسیاری دیگر وجود دارند. برای پیدا کردن بهترین سایت‌های آموزشی، بهتر است نیازها و علاقه‌های خود را مشخص کنید و سپس با استفاده از موتورهای جستجو و نظرات کاربران، به سایت‌های مناسب دست پیدا کنید. همچنین، بهتر است منابع رسمی و معتبری را در نظر بگیرید و همیشه به تارنمای رسمی سایت‌ها و منابع آموزشی ارجاع دهید. 😉
◦•◉✿ @python_rd ✿◉•◦
نقشه راه یادگیری هوش مصنوعی | AI

🔘 هوش مصنوعی برای هوشمندسازی ماشین‌ها استفاده میشه و مزایا و فایده‌ها زیادی برای جامعه و انسان داره.

👈 گام اول- ریاضیات
🔘 همون‌طور که اکثر دانشجویان رشته کامپیوتر می‌دانند ریاضیات و به خصوص مباحث جبرخطی، دیفرانسیل، حسابان، ساختمان گسسته و آمار و احتمال توی این رشته و گرایش نقش بزرگی رو ایفا می‌کنند؛ چرا که ماشین‌ها و کامپیوترها تنها راهی که می‌فهمند اعمال منطقی و ریاضیات است و برای این که ما برنامه‌ها و اهداف خودمون رو به اون‌ منتقل کنیم باید بهشون فعالیت منطقی و ریاضیات بدیم.

🔘 در نتیجه شما برای شروع در گرایش هوش مصنوعی و زیرشاخه آن که بخواین فعالیت کنید، ناچارید این دروس رو یاد بگیرید.

👈 گام دوم - برنامه نویسی
🔘 برنامه نویسی رکن اصلی تو زمینه هوش مصنوعی داره و شما قبل از تسلط به زبان برنامه نویسی، باید به ساختمان داده و طراحی الگوریتم که از دروس تخصصی کامپیوتر هستند مسلط شوید چرا که شرط لازم برای نوشتن یک برنامه درست و بهینه و با خطا کم، باید الگوریتم رو به درستی دانست تا بتواند باعث صرفه‌جویی و کارآمد بودن بیشتر یک کد رو داشته باشد.

🔘 از بین زبان‌های برنامه نویسی که با هوش مصنوعی تعامل خوبی دارند، می‌تو‌نیم به پایتون اشاره کنیم:
پایتون: به دلیل سادگی و داشتن پکیج‌هایی مثه sci-kit learn کار با این کتابخونه به طور عمده در زمینه‌های data mining و data analys است که طیف وسیعی از الگوریتم‌ها یادگیری ماشین در اون تعبیه شده، که از محبوب‌ترین زبان‌ها برنامه نویسی است.

🔘 بعد از یادگیری مقدماتی زبان برنامه نویسی، باید شیوه کار کردن با کتابخانه‌ها مختلف و مرتبط با هوش مصنوعی مثه numpy (کتابخونه‌ای که به کمکش می‌تونیم روی داده‌های عددی‌ایی که در حافظه موجوده، عملیات مختلفی رو انجام بدیم) رو یاد بگیرید و بارها و بارها تمرین کنید که در استفاده از اون متخصص شوید.

👈 گام سوم - مباحث و فیلدهای هوش مصنوعی
🔘 بعد از این که از مباحث اولیه عبور کردید، باید یه دانش عمومی از هوش مصنوعی رو آموزش ببینید.

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

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

🔘 البته لازم به ذکر است که یکی دیگر از مهارت‌هایی که به پیشرفت شما در زمینه هوش مصنوعی کمک می‌کنه آشنایی کامل و تخصصی با زبان انگلیسی است چرا که به روز بودن و مطالعه‌ی مقالات روز دنیا در این رشته اهمیت بالایی داره اکثر این مقالات به زبان انگلیسی است و از آن‌جا که یه فیلد در رشته کامپیوتر است دانستن زبان انگلیسی لازم است.

📌 ریاضیات و برنامه نویسی برای همه زیرشاخه‌ها هوش مصنوعی موردنیازه و در واقع جز قدم‌های اولیه به عنوان پیش‌نیاز به حساب میاد.

#نقشه_راه #RoadMap #هوش_مصنوعی #AI

◦•◉✿ @python_rd ✿◉•◦
تکنولوژی‌های هوش مصنوعی به تفکیک زمینه‌های استفاده.
خصوصا در زمینه تحقیق و مقاله نویسی و ویراستاری نباید از هوش مصنوعی غافل شد.
#AI
#هوش_مصنوعی
◦•◉✿ @python_rd ✿◉•◦
◦•◉✿ @python_rd ✿◉•◦
PyCoders (پایتون)
Photo
🟠در زبان آلمانی بین دو جمله زیر تفاوت هست:
Shakespeare hat die Geschichte von Hamlet geschrieben.
شکسپیر، داستان هملت را نوشت.
Ein Mann namens Shakespeare schrieb die Geschichte von Hamlet.
مردی به نام شکسپیر، داستان هملت را نوشت.

🔵میگن، شکسپیر اون شخص نیست، بلکه ی اسمه که روی اون شخص گذاشته شده.
اون شخص میتونه هر اسمی داشته باشه.

ولی در انگلیسی این ی بحث لفظی و بی معنیه و تفاوت معنایی بینشون نیست.

🟠به متن زیر دقت کنید:
  “Suppose I say to Fat, or Kevin says to Fat, “You did not experience God. You merely experienced something with the qualities and aspects and nature and powers and wisdom and goodness of God.” This is like the joke about the German proclivity toward double abstractions; a German authority on English literature declares, “Hamlet was not written by Shakespeare; it was merely written by a man named Shakespeare.” In English the distinction is verbal and without meaning, although German as a language will express the difference (which accounts for some of the strange features of the German mind).”

Valis, p71 (Book-of-the-Month-Club Edition)

🔵حالا ربطش به برنامه‌نویسی چیه؟
دو رویکرد بسیار شناخته شده و قابل درک برای انتقال پارامتر در زبان‌های برنامه‌نویسی مختلف، عبارتند از:
pass by reference = بر اساس مرجع
pass by value = بر اساس مقدار

بعنوان مثال، کد زیر رو در نظر بگیرید:
def reassign(lst: list) -> list:
lst = [0, 1]
return lst

def append(lst: list) -> list:
lst.append(1)
return lst

lst = [0]
print(reassign(lst))
print(append(lst))

🟠حالا به این جمله دقت کنید:
«هملت توسط شکسپیر نوشته نشد، بلکه توسط مردی به نام شکسپیر نوشته شد.»

حالا بصورت کد:
a = []

🔵اینجا [] ی لیست تهی و a هم متغیری که به این لیست تهی اشاره داره، ولی a ی لیست تهی نیست.
pass by reference:
🟠در اینصورت، خود متغیر به تابع ارسال میشه و مقدار داخلش هم به تابع ارسال میشه.
مثل ی جعبه که با محتویات داخلش ارسال میشه.
اگه داخل تابع مقدارش رو تغییر بدیم، بیرون تابع هم مقدارش تغییر میکنه.

pass by value:
🔵در اینصورت تابع ی کپی از اون متغیر رو دریافت میکنه که مقادیرش تو ی خونه دیگه حافظه رم نگهداری میشن.
مثل ی سری مدارک که داخل ی جعبه بودن، اومدیم ی کپی ازشون گرفتیم، گذاشتیم داخل ی جعبه دیگه و ارسالش کردیم.
اینجا با تغییر مقادیر داخل تابع، مقادیرش بیرون تابع تغییر نمیکنه.

pass by object reference value(Pythonic):
🟠در اینصورت تابع ی رفرنس به اون آبجکت دریافت میکنه و میتونه به مقادیر اون آبجکت تو حافظه رم دسترسی داشته باشه، ولی خود اون جعبه‌ای که مقادیر توش هستن رو دریافت نمیکنه، بلکه تابع میاد جعبه خودش رو میسازه و ی متغیر جدید برای خودش داره که اینم به همون خونه‌ای که متغیر بیرونی اشاره میکرد اشاره میکنه.
متغیرها متفاوتن، گرچه اسمشون یکی باشه، اما رفرنس هر دو یکیه.
به تصویر بالا، shallow copy دقت کنید تا متوجه بشید چی میگم.
حالا اگه مقادیر رو داخل تابع تغییر بدیم، مقادیر بیرون تابع هم تغییر میکنن.



📚با تشکر از:
https://robertheaton.com/2014/02/09/pythons-pass-by-object-reference-as-explained-by-philip-k-dick/

◦•◉✿ @python_rd ✿◉•◦
🟠ارسال آرگومان‌ها با تعداد نامشخص به تابع

زمانیکه تعداد آرگومان‌های ارسالی به یک تابع نامشخص باشد کافی است از علامت * در کنار نام پارامتر استفاده شود.

زمانیکه از آرگومان‌های ستاره‌دار استفاده می‌شود در هنگام فراخوانی تابع نمی‌توان آرگومان ستاره‌دار را به صورت  parameter = arguman تعریف کرد. همانطور که در مثال اول مشاهده می‌شود سه مقدار 3 ، 2 و 5 به عنوان آرگومان به تابع ارسال می‌شوند. تابع، آن‌ها را در قالب یک تاپل در نظر می‌گیرد. در انتها این تاپل نمایش داده می‌شود.

نکته دیگر این است که تمام آرگومان‌های بعد از آرگومان ستاره‌دار باید به صورت parameter = arguman تعریف شوند. همانطور که در مثال دوم مشاهده می‌شود آرگومان c ، که بعد از آرگومان ستاره‌دار b قرار دارد در هنگام فراخوانی به صورت c=4 تعریف شده است.

#آموزش_پایتون
#توابع
#آرگومان

◦•◉✿ @python_rd ✿◉•◦
نرم افزار ضبط صدا با پایتون

◦•◉✿ @python_rd ✿◉•◦
بهترین چنل های یوتیوب برای دیتا ساینس:

Mathematics : 3Blue 1 Brown
Python : Corey Schafer
SQL : Joey Blue
MS Excel : ExcellsFun
Tableau : Tableau Tim
Power BI : Guy in a Cube
Machine Learning : Sentsex
Special : Leila Gharani

◦•◉✿ @python_rd ✿◉•◦
This media is not supported in your browser
VIEW IN TELEGRAM
🪩 یه ابزار ایده آل برای تولیدکننده‌های محتوا

♨️ یه ابزار هوش مصنوعی که به طور
خودکار شخصیت‌های CG (Computer Generated) رو متحرک می‌کنه و لایو اکشن می‌سازه.

#هوش_مصنوعی #AI
◦•◉✿ @python_rd ✿◉•◦
🥸Find the output of the following code:🧐📚

def add(a,b,c): print(a+b+c) def multiply(a,b,c): return a*b*c m = add(1,2,3) n = multiply(1,2,3) print(m,n)
Anonymous Quiz
36%
6 6
11%
6
43%
6, None 6
11%
None of the above
True😂😂

#فان
◦•◉✿ @python_rd ✿◉•◦
50 Essential Python Commands.pdf
1.8 MB
🔷️50 دستور ضروری پایتون🐍
🔸️فرمت PDF
🔷️زبان انگلیسی
#BOOK
#کتاب
◦•◉✿ @python_rd ✿◉•◦
در زمینه زبان برنامه‌نویسی پایتون، موارد زیادی کتاب عالی وجود دارند که می‌توانند به شما در یادگیری این زبان کمک کنند. البته، بهترین کتاب بستگی به سطحتان و نیازهایتان دارد. اما من می‌توانم به شما تعدادی از کتاب‌های پرطرفدار در زمینه زبان برنامه‌نویسی پایتون را معرفی کنم:

1. "Python Crash Course" نوشته Eric Matthes: این کتاب برای مبتدیان بسیار مناسب است و به شما اصول پایه و مفاهیم اساسی پایتون را آموزش می‌دهد. همچنین، با استفاده از پروژه‌های عملی، شما را با کاربردهای واقعی زبان آشنا می‌کند.

2. "Python for Data Analysis" نوشته Wes McKinney: اگر به تجزیه و تحلیل داده‌ها علاقه‌مند هستید، این کتاب برای شما مناسب است. در این کتاب، شما را با استفاده از کتابخانه‌های محبوب مانند NumPy و Pandas در پایتون آشنا می‌کند.

3. "Automate the Boring Stuff with Python" نوشته Al Sweigart: این کتاب به شما نشان می‌دهد که چگونه با استفاده از پایتون کارهای روزمره و خسته کننده را به صورت خودکار انجام دهید. این کتاب مفید برای افرادی است که می‌خواهند پایتون را برای اتوماسیون و خودکارسازی استفاده کنند.

4. "Fluent Python" نوشته Luciano Ramalho: این کتاب برای افرادی که قصد تسلط بیشتر بر روی زبان پایتون را دارند مناسب است. در این کتاب، مفاهیم پیشرفته‌تری مانند توابع فراخوانی، توابع مولد، مدیریت استثناها و غیره را مورد بررسی قرار می‌دهد.

5. "Python Cookbook" نوشته David Beazley و Brian K. Jones: این کتاب به شما تکنیک‌ها و الگوهای مختلف برنامه‌نویسی در پایتون را آموزش می‌دهد. با استفاده از مثال‌های عملی، شما را با روش‌های بهینه‌تر برنامه‌نویسی در پایتون آشنا می‌کند.

این لیست تنها چند مثال از کتاب‌های معروف در زمینه زبان برنامه‌نویسی پایتون است و هنوز بسیاری دیگر وجود دارند.
#کتاب
◦•◉✿ @python_rd ✿◉•◦
This media is not supported in your browser
VIEW IN TELEGRAM
📝کشاورزی با هوش مصنوعی و لیزر

ماشینی که علف‌های هرز رو شناسایی می کنه و با لیزر می سوزونه!
#هوش_مصنوعی
#AI
◦•◉✿ @python_rd ✿◉•◦
خیلی حس خوبیههه😂
🌱 برات پیش اومده؟😉⠀⠀
#میم
#فان
⠀◦•◉✿ @python_rd ✿◉•◦
مطلبی درباره تفاوت == و is
◦•◉✿ @python_rd ✿◉•◦
PyCoders (پایتون)
مطلبی درباره تفاوت == و is ◦•◉✿ @python_rd ✿◉•◦
مطلبی در مورد تفاوت == و is

ما وقتی ی متغیر می‌سازیم، مثلا ی لیست، به این صورت:
list1 = [1, 2, 3, 4]
🔸️این متغیری که لیستمون رو بهش نسبت دادیم به ی خونه از حافظه رم اشاره میکنه، یعنی این لیست رو داخل ی خونه رم میذاره و به آدرس اون خونه اشاره میکنه.
حالا ی لیست دیگه بسازیم:
list2 = list1
🔷️در واقع ما گفتیم لیست دوم هم به همون آدرسی که لیست یک اشاره میکرد اشاره کنه.
حالا هر تغییری تو لیست یک یا لیست دو ایجاد کنیم اون یکی هم تغییر میکنه، مثلا:
list2.append(5)
نتیجه میشه:
print(list1) -> [1, 2, 3, 4, 5]
print(list2) -> [1, 2, 3, 4, 5]

ولی اگه بیایم بگیم:
list3 = list1[:]

🔸️اینجا میگیم ی لیست بساز و آیتم‌های لیست یک رو بریز داخلش، ولی نگفتیم لیست سه = لیست یک؛ بنابراین لیست سه به ی خونه دیگه از حافظه رم اشاره میکنه ولی مقدارش همون مقدار لیست یک هست.
به این ترتیب اگه بگیم:
list3.append(6)
نتیجه میشه:
print(list1) -> [1, 2, 3, 4, 5]
print(list2) -> [1, 2, 3, 4, 5]
print(list3) -> [1, 2, 3, 4, 5, 6]

🔷️چون ما دیتای ی خونه دیگه از حافظه رم رو تغییر دادیم و فقط مقدار متغیری که به اون خونه اشاره میکنه تغییر کرد.

🔸️برای متوجه شدن این تفاوت می‌تونید با دستور زیر نتیجه رو ببینید:

print(id(list1))
print(id(list2))
print(id(list3))

🔷️تابع id آدرس خونه‌ای که متغیر بهش اشاره میکنه رو میده، اینجا لیست یک و لیست دو ی چیز رو چاپ میکنن ولی لیست سه ی چیز دیگه رو چاپ میکنه.

🔸️حالا علامت == فقط مقدار دو تا متغیر رو با هم مقایسه میکنه ولی علامت is میاد هم مقدارشون و هم اینکه به ی خونه اشاره میکنن یا نه رو بررسی میکنه، پس:

list1 is list2 -> True
list1 == list2 -> True

list1 is list3 -> False
list1 == list3 -> False (البته چون اونجا ۶ رو به لیست سه اضافه کردیم)
قبل append
list1 == list3 -> True

🔷️این همون مفهوم (کپی سطحی)shallow copy در پایتونه.
روش اول کپی نکرد، بلکه آدرس خونه رم رو به متغیر دوم نسبت داد ولی دومی کپی سطحی کرد.

حالا فرض کنید لیست اول رو به این صورت تعریف کردیم:
list1 = [1, 2, [3, 4], 5]
🔸️یعنی یه لیست دیگه هم بعنوان ی آیتم بهش دادیم، یعنی به عبارتی لیست تو در تو ایجاد کردیم.
اینجا اگه از روش کپی سطحی استفاده کنیم بازم همون مشکل اول بوجود میاد؛ چون باز آدرس خونه رم لیست داخلی رو داد به متغیر دومی.
list2 = list1[:]
حالا فرض کنید تغییر رو بصورت زیر اعمال کردیم:
list2[2][0] = 9
دوباره خروجی لیست اول رو ببینید:
print(list1) -> [1, 2, [9, 4], 5]

🔷️چطور میتونیم جلوی این مشکل رو بگیریم و بعبارتی ی (کپی عمیق)deepcopy داشته باشیم؟

با استفاده از کتابخونه داخلی copy:
import copy
list2 = copy.deepcopy(list1)

البته میشه با همین کتابخونه هم ی کپی سطحی داشت، بصورت زیر:
list3 = copy.copy(list1)

◦•◉✿ @python_rd ✿◉•◦
PyCoders (پایتون)
مطلبی درباره تفاوت == و is ◦•◉✿ @python_rd ✿◉•◦
اگر کسی میدونه و یادش هست تو کدوم قسمت و کدوم فصل دوره پایتون سبزلرن این موضوع رو کامل باز شده توقسمت کامنت ها به بقیه اطلاع بدید تا اگر مشکلی پیش اومد در فیلم ها رفع ابهام بشه!
سپاس