آموزش پایتون - راهنمای عملی [نسخه 2023]

Python - The Practical Guide [2023 Edition]

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: پایتون را از پایه یاد بگیرید و از پایتون برای ساخت یک پروژه عملی از ابتدا استفاده کنید! دانش‌آموزان می‌توانند دوره‌های پیشرفته پایتون را بگذرانند و با آن پروژه‌های واقعی بسازند. دانش‌آموزان می‌توانند دانش پایتون و بلاک چین را که در این دوره به دست آورده‌اند و شروع به کار بر روی بلاک چین خود کنند. لازم است شما می توانید از هر سیستم عاملی که می خواهید استفاده کنید - macOS، Linux یا Windows: همه اینها پوشش داده شده است

آیا می خواهید پایتون را در حین ساختن یک پروژه دوره هیجان انگیز یاد بگیرید؟ این دوره برای شماست!

این یک دوره آموزشی پایتون بسیار تمرین محور است که پایتون را از ابتدا به شما آموزش می دهد - بدون نیاز به تجربه برنامه نویسی قبلی!

Python احتمالاً پرطرفدارترین زبان برنامه نویسی است که این روزها می توانید یاد بگیرید!

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

در این دوره، پایتون را از ابتدا یاد خواهید گرفت - و این کار را همزمان با ساخت بلاک چین و ارز دیجیتال خود انجام خواهید داد. البته اینها موضوعات بسیار پرطرفدار هستند و افراد زیادی نمی دانند که بلاک چین واقعا چیست. به عنوان یک اثر جانبی خوب، پس از اتمام این دوره خواهید دانست که چگونه یک بلاک چین کار می کند. این یک پروژه دوره هیجان انگیز است که به شما امکان می دهد پایتون را یاد بگیرید و در مورد چیزی که می دانید و می توانید استفاده کنید استفاده کنید.

چرا پایتون؟

همانطور که در بالا نوشته شد، پایتون هم کاربری آسان و هم در عین حال بسیار متنوع و قدرتمند است. مطمئنا بدترین ترکیب نیست. اگر آن را در روندهای Google بررسی کنید (و آن را با سایر زبان های برنامه نویسی مقایسه کنید)، خواهید دید که این روزها بسیار محبوب است.

تقریباً هر شرکت مهمی از آن استفاده می کند - خواه گوگل، آمازون یا فیس بوک. برای اجرای برنامه های کاربردی وب، اسکریپت ها، برنامه های دسکتاپ و الگوریتم های یادگیری ماشین استفاده می شود. این دوره اصول اولیه همه این موارد استفاده را تنظیم می کند!

چرا بلاک چین؟

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

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

چه کسی به شما آموزش می دهد؟

اسم من ماکسیمیلیان شوارتزمولر است و یک توسعه دهنده مستقل هستم. تمرکز من روی توسعه وب است اما سال هاست که با پایتون کار می کنم. این در واقع یکی از اولین زبان هایی است که در 13 سالگی با آن شروع کردم. من خالق بسیاری از دوره های پرفروش 5 ستاره در اینجا در Udemy هستم و عاشق غواصی در فن آوری های جدید هستم. به همین دلیل است که وقتی محبوب‌تر شد، مجبور شدم به کل این بلاک چین بپردازم و چرا آن را به عنوان یک پروژه برای این دوره انتخاب کردم.

من بی صبرانه منتظر خوش آمدگویی به شما در این دوره هستم و امیدوارم که شما هم مانند من از ایجاد آن لذت ببرید! :-)

چه چیزی در دوره وجود دارد؟

سوال عالی! در اینجا یک خلاصه کوتاه آمده است:

  • خلاصه ای از پایتون و فناوری بلاک چین

  • همه نحو پایه پایتون که باید بدانید (متغیرها، عملگرها، توابع، ...)

  • حلقه ها و عبارات شرطی

  • ساختارهای داده پیچیده تر مانند تاپل ها یا دیکشنری ها

  • نگاهی دقیق تر به توابع داخلی و کتابخانه استاندارد پایتون با

  • دستکاری رشته

  • نحوه کار با فایل ها

  • رسیدگی به خطا

  • اشکال‌زدایی

  • برنامه نویسی شی گرا با کلاس ها و ارث بری

  • ماژول‌های خارجی داخلی (بسته‌ها)

  • نحوه چرخش سرور Http با بسته Flask

  • رسیدگی به درخواست‌های Http (ارسال دریافتی)

  • و بیشتر!

پیش نیازهای دوره چیست؟

  • دانش برنامه نویسی قبلی لازم نیست

  • دانش بسیار ابتدایی در مورد نحوه عملکرد رایانه به شما کمک می کند (اما می تواند در حین گذراندن دوره آموزشی نیز ایجاد شود)

آیا این دوره برای شماست؟

این برای شماست اگر ...

  • شما می خواهید وارد برنامه نویسی شوید = پایتون یک "زبان اول" عالی است زیرا یادگیری آن آسان و بسیار متنوع است

  • می خواهید افق خود را گسترش دهید = آیا شما یک توسعه دهنده وب هستید؟ می خواهید چیز جدیدی یاد بگیرید؟ در اینجا شما بروید!

  • شما به پایتون برای توسعه وب علاقه دارید = این دوره به طور کلی پایتون را به شما آموزش می دهد، اما دو ماژول وجود دارد که در آنها کمی به توسعه وب نیز می پردازیم

  • شما به فناوری بلاک چین علاقه مند هستید = مفاهیم اصلی آن را به عنوان یک اثر جانبی این دوره یاد خواهید گرفت!

  • شما پایتون را می شناسید اما می خواهید آن را تمرین کنید = پروژه دوره چالش برانگیز است و از زندگی واقعی گرفته شده است - احتمالاً تمرین بهتری وجود ندارد

آیا این به نظر شما خوب است؟ خوشحال میشم در این دوره به شما خوشامد بگویم! :-)


سرفصل ها و درس ها

شروع شدن Getting Started

  • معرفی Introduction

  • پایتون چیست؟ What is Python?

  • به انجمن آموزش آنلاین ما بپیوندید Join our Online Learning Community

  • راه اندازی پایتون Setting Up Python

  • اجرای پایتون 3 به صورت پیش فرض (در macOS) Running Python 3 as a Default (on macOS)

  • نوشتن اولین کد پایتون Writing our First Python Code

  • بلاک چین چیست؟ What is the Blockchain?

  • طرح کلی دوره Course Outline

  • جایگزین های پایتون Python Alternatives

  • آشنایی با نسخه های پایتون Understanding the Python Versions

  • چگونه از این دوره بیشترین بهره را ببرید How To Get The Most Out Of This Course

  • منابع و لینک های مفید Useful Resources & Links

شروع شدن Getting Started

  • معرفی Introduction

  • پایتون چیست؟ What is Python?

  • به انجمن آموزش آنلاین ما بپیوندید Join our Online Learning Community

  • راه اندازی پایتون Setting Up Python

  • اجرای پایتون 3 به صورت پیش فرض (در macOS) Running Python 3 as a Default (on macOS)

  • نوشتن اولین کد پایتون Writing our First Python Code

  • بلاک چین چیست؟ What is the Blockchain?

  • طرح کلی دوره Course Outline

  • جایگزین های پایتون Python Alternatives

  • آشنایی با نسخه های پایتون Understanding the Python Versions

  • چگونه از این دوره بیشترین بهره را ببرید How To Get The Most Out Of This Course

  • منابع و لینک های مفید Useful Resources & Links

غواصی در اصول پایتون Diving Into the Basics of Python

  • معرفی ماژول Module Introduction

  • آشنایی با REPL و انواع داده ها Understanding the REPL and Data Types

  • کار با متغیرها Working with Variables

  • کار با اعداد Working with Numbers

  • استفاده از اپراتورها Using Operators

  • درک یک رفتار "ویژه" هنگام کار با اعداد Understanding a "Special" Behaviour when Working with Numbers

  • کار با رشته ها Working with Strings

  • کار با لیست ها Working with Lists

  • افزودن و حذف موارد فهرست Adding & Removing List Items

  • آماده سازی بلاک چین - نظریه Preparing the Blockchain - The Theory

  • در حال نصب IDE ما Installing our IDE

  • استفاده از توابع برای افزودن موارد فهرست Using Functions to Add List Items

  • نظریه بلاک چین: شناخت بلوک ها Blockchain Theory: Understanding Blocks

  • دسترسی به آخرین مورد فهرست Accessing the Last List Item

  • افزودن آرگومان به توابع Adding Arguments to Functions

  • درک کلمه کلیدی "بازگشت". Understanding the "return" Keyword

  • استفاده از آرگومان های پیش فرض Using Default Arguments

  • کار با آرگومان های کلیدواژه Working with Keyword Arguments

  • با استفاده از تابع "ورودی". Using the "input" Function

  • جلوگیری از اجرای کدهای تکراری Avoiding Repetitive Code Execution

  • درک محدوده متغیر Understanding the Variable Scope

  • بررسی اسناد رسمی Exploring the Official Documentation

  • افزودن نظرات و رشته های Doc Adding Comments and Doc Strings

  • ساختار کد چند خطی در پایتون Structuring Multi Line Code in Python

  • زمان برای تمرین - مبانی Time to Practice - The Basics

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

غواصی در اصول پایتون Diving Into the Basics of Python

  • معرفی ماژول Module Introduction

  • آشنایی با REPL و انواع داده ها Understanding the REPL and Data Types

  • کار با متغیرها Working with Variables

  • کار با اعداد Working with Numbers

  • استفاده از اپراتورها Using Operators

  • درک یک رفتار "ویژه" هنگام کار با اعداد Understanding a "Special" Behaviour when Working with Numbers

  • کار با رشته ها Working with Strings

  • کار با لیست ها Working with Lists

  • افزودن و حذف موارد فهرست Adding & Removing List Items

  • آماده سازی بلاک چین - نظریه Preparing the Blockchain - The Theory

  • در حال نصب IDE ما Installing our IDE

  • استفاده از توابع برای افزودن موارد فهرست Using Functions to Add List Items

  • نظریه بلاک چین: شناخت بلوک ها Blockchain Theory: Understanding Blocks

  • دسترسی به آخرین مورد فهرست Accessing the Last List Item

  • افزودن آرگومان به توابع Adding Arguments to Functions

  • درک کلمه کلیدی "بازگشت". Understanding the "return" Keyword

  • استفاده از آرگومان های پیش فرض Using Default Arguments

  • کار با آرگومان های کلیدواژه Working with Keyword Arguments

  • با استفاده از تابع "ورودی". Using the "input" Function

  • جلوگیری از اجرای کدهای تکراری Avoiding Repetitive Code Execution

  • درک محدوده متغیر Understanding the Variable Scope

  • بررسی اسناد رسمی Exploring the Official Documentation

  • افزودن نظرات و رشته های Doc Adding Comments and Doc Strings

  • ساختار کد چند خطی در پایتون Structuring Multi Line Code in Python

  • زمان برای تمرین - مبانی Time to Practice - The Basics

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

کار با Loops & Conditionals Working with Loops & Conditionals

  • معرفی ماژول Module Introduction

  • درک حلقه ها - نظریه Understanding Loops - Theory

  • ایجاد یک حلقه "for". Creating a "for" Loop

  • ایجاد یک حلقه "while". Creating a "while" Loop

  • بستن REPL Closing the REPL

  • درک شرایط - نظریه Understanding Conditionals - Theory

  • اضافه کردن "اگر-دیگر" به بلاک چین ما Adding "if-else" to our Blockchain

  • کار با "الیف" Working with "elif"

  • درک "شکستن" و "ادامه" Understanding "break" & "continue"

  • بهبود کد ما با حلقه ها و شرایط Improving our Code with Loops & Conditionals

  • درک عملگرهای بولی - "is" و "in" Understanding Boolean Operators - "is" & "in"

  • کلمه کلیدی "نه". The "not" Keyword

  • درک "و" و "یا" Understanding "and" and "or"

  • شرایط گروه بندی Grouping Conditionals

  • در مورد "switch" در پایتون چطور؟ What About "switch" in Python?

  • تایید بلاک چین ما Verifying our Blockchain

  • تئوری بلاک چین: درک تأیید صحت بلاک چین Blockchain Theory: Understanding Blockchain Verification

  • استفاده از شرایط داخل حلقه "while". Using Conditions inside the "while" Loop

  • استفاده از "else" در Loops Using "else" in Loops

  • اضافه کردن تابع "محدوده". Adding the "range" Function

  • زمان برای تمرین - حلقه ها و شرایط Time to Practice - Loops & Conditionals

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

کار با Loops & Conditionals Working with Loops & Conditionals

  • معرفی ماژول Module Introduction

  • درک حلقه ها - نظریه Understanding Loops - Theory

  • ایجاد یک حلقه "for". Creating a "for" Loop

  • ایجاد یک حلقه "while". Creating a "while" Loop

  • بستن REPL Closing the REPL

  • درک شرایط - نظریه Understanding Conditionals - Theory

  • اضافه کردن "اگر-دیگر" به بلاک چین ما Adding "if-else" to our Blockchain

  • کار با "الیف" Working with "elif"

  • درک "شکستن" و "ادامه" Understanding "break" & "continue"

  • بهبود کد ما با حلقه ها و شرایط Improving our Code with Loops & Conditionals

  • درک عملگرهای بولی - "is" و "in" Understanding Boolean Operators - "is" & "in"

  • کلمه کلیدی "نه". The "not" Keyword

  • درک "و" و "یا" Understanding "and" and "or"

  • شرایط گروه بندی Grouping Conditionals

  • در مورد "switch" در پایتون چطور؟ What About "switch" in Python?

  • تایید بلاک چین ما Verifying our Blockchain

  • تئوری بلاک چین: درک تأیید صحت بلاک چین Blockchain Theory: Understanding Blockchain Verification

  • استفاده از شرایط داخل حلقه "while". Using Conditions inside the "while" Loop

  • استفاده از "else" در Loops Using "else" in Loops

  • اضافه کردن تابع "محدوده". Adding the "range" Function

  • زمان برای تمرین - حلقه ها و شرایط Time to Practice - Loops & Conditionals

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

درک ساختارهای پیچیده داده Understanding Complex Data Structures

  • معرفی ماژول Module Introduction

  • درک ساختار داده های مورد نیاز برای بلاک چین Understanding the Required Data Structure for our Blockchain

  • کار با Iterables Working with Iterables

  • انتخاب ساختار داده مناسب Choosing the Right Datastructure

  • معاملات با دیکشنری ها و تاپل ها Transactions with Dictionaries & Tuples

  • تئوری بلاک چین: درک تراکنش ها Blockchain Theory: Understanding Transactions

  • باز کردن تاپل Unpacking the Tuple

  • بلوک های معدن Mining Blocks

  • هش کردن بلوک های قبلی Hashing Previous Blocks

  • درک مفاهیم لیست Understanding List Comprehensions

  • و Dict Comprehensions چیست؟ And What are Dict Comprehensions?

  • ترکیب درک لیست و "اگر" Combining List Comprehensions & "if"

  • بهبود منطق اعتبارسنجی بلاک چین Improving the Blockchain Validation Logic

  • مدیریت فهرستی از شرکت کنندگان در بلاک چین Managing a List of Participants in the Blockchain

  • محاسبه مانده ها Calculating Balances

  • به ماینرهای بلاک چین پاداش می دهیم Rewarding the Miners of our Blockchain

  • تایید تراکنش ها Verifying Transactions

  • درک مرجع در مقابل کپی ارزش Understanding Reference vs Value Copying

  • کار با Range Selector Working with the Range Selector

  • درک کم عمق در مقابل کپی های عمیق Understanding Shallow vs Deep Copies

  • مقایسه "است" و "==" Comparing "is" & "=="

  • غواصی عمیق تر به روش های تکرارشونده Diving Deeper Into Iterable Methods

  • درک توابع "همه" و "هر" Understanding the "all" & "any" Functions

  • مقایسه تکرارپذیرها Comparing Iterables

  • زمان تمرین - ساختارهای داده پیچیده Time to Practice - Complex Datastructures

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

درک ساختارهای پیچیده داده Understanding Complex Data Structures

  • معرفی ماژول Module Introduction

  • درک ساختار داده های مورد نیاز برای بلاک چین Understanding the Required Data Structure for our Blockchain

  • کار با Iterables Working with Iterables

  • انتخاب ساختار داده مناسب Choosing the Right Datastructure

  • معاملات با دیکشنری ها و تاپل ها Transactions with Dictionaries & Tuples

  • تئوری بلاک چین: درک تراکنش ها Blockchain Theory: Understanding Transactions

  • باز کردن تاپل Unpacking the Tuple

  • بلوک های معدن Mining Blocks

  • هش کردن بلوک های قبلی Hashing Previous Blocks

  • درک مفاهیم لیست Understanding List Comprehensions

  • و Dict Comprehensions چیست؟ And What are Dict Comprehensions?

  • ترکیب درک لیست و "اگر" Combining List Comprehensions & "if"

  • بهبود منطق اعتبارسنجی بلاک چین Improving the Blockchain Validation Logic

  • مدیریت فهرستی از شرکت کنندگان در بلاک چین Managing a List of Participants in the Blockchain

  • محاسبه مانده ها Calculating Balances

  • به ماینرهای بلاک چین پاداش می دهیم Rewarding the Miners of our Blockchain

  • تایید تراکنش ها Verifying Transactions

  • درک مرجع در مقابل کپی ارزش Understanding Reference vs Value Copying

  • کار با Range Selector Working with the Range Selector

  • درک کم عمق در مقابل کپی های عمیق Understanding Shallow vs Deep Copies

  • مقایسه "است" و "==" Comparing "is" & "=="

  • غواصی عمیق تر به روش های تکرارشونده Diving Deeper Into Iterable Methods

  • درک توابع "همه" و "هر" Understanding the "all" & "any" Functions

  • مقایسه تکرارپذیرها Comparing Iterables

  • زمان تمرین - ساختارهای داده پیچیده Time to Practice - Complex Datastructures

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

کار با توابع و رشته ها Working with Functions & Strings

  • معرفی ماژول Module Introduction

  • مقایسه رشته ها و لیست ها Comparing Strings & Lists

  • درک روش "فرمت". Understanding the "format" Method

  • شخصیت های فراری Escaping Characters

  • قالب بندی رشته ها به راحتی با "f" Formatting Strings Conveniently with "f"

  • اضافه کردن قالب بندی رشته به پروژه ما Adding String Formatting to our Project

  • درک عملکرد "نقشه". Understanding the "map" Function

  • کار با توابع لامبدا Working with Lambda Functions

  • کاهش لیست ها Reducing Lists

  • باز کردن آرگومان های تابع Unpacking Function Arguments

  • زمان تمرین - توابع و رشته ها Time to Practice - Functions & Strings

  • رفع اشکال Fixing a Bug

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

کار با توابع و رشته ها Working with Functions & Strings

  • معرفی ماژول Module Introduction

  • مقایسه رشته ها و لیست ها Comparing Strings & Lists

  • درک روش "فرمت". Understanding the "format" Method

  • شخصیت های فراری Escaping Characters

  • قالب بندی رشته ها به راحتی با "f" Formatting Strings Conveniently with "f"

  • اضافه کردن قالب بندی رشته به پروژه ما Adding String Formatting to our Project

  • درک عملکرد "نقشه". Understanding the "map" Function

  • کار با توابع لامبدا Working with Lambda Functions

  • کاهش لیست ها Reducing Lists

  • باز کردن آرگومان های تابع Unpacking Function Arguments

  • زمان تمرین - توابع و رشته ها Time to Practice - Functions & Strings

  • رفع اشکال Fixing a Bug

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

کار با کتابخانه استاندارد پایتون Working with the Python Standard Library

  • معرفی ماژول Module Introduction

  • کاوش در کتابخانه استاندارد پایتون Exploring the Python Standard Library

  • واردات بسته ها - تئوری Importing Packages - Theory

  • وارد کردن "hashlib" برای ایجاد یک Hash منحصر به فرد Importing "hashlib" to Create a Unique Hash

  • نظریه بلاک چین: درک هش ها Blockchain Theory: Understanding Hashes

  • استفاده از سایر نحوهای وارداتی Using Other Import Syntaxes

  • "اثبات کار" The "Proof of Work"

  • نظریه بلاک چین: درک "اثبات کار" Blockchain Theory: Understanding the "Proof of Work"

  • افزودن اثبات کار به بلاک چین Adding the Proof of Work to our Blockchain

  • از جمله اثبات کار در عملکرد معدن ما Including the Proof of Work in our Mining Function

  • رفع خطای Hash Order Fixing a Hash Order Fault

  • تقسیم کردن کد ما Splitting Up our Code

  • زمان تمرین - کتابخانه استاندارد Time to Practice - The Standard Library

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

کار با کتابخانه استاندارد پایتون Working with the Python Standard Library

  • معرفی ماژول Module Introduction

  • کاوش در کتابخانه استاندارد پایتون Exploring the Python Standard Library

  • واردات بسته ها - تئوری Importing Packages - Theory

  • وارد کردن "hashlib" برای ایجاد یک Hash منحصر به فرد Importing "hashlib" to Create a Unique Hash

  • نظریه بلاک چین: درک هش ها Blockchain Theory: Understanding Hashes

  • استفاده از سایر نحوهای وارداتی Using Other Import Syntaxes

  • "اثبات کار" The "Proof of Work"

  • نظریه بلاک چین: درک "اثبات کار" Blockchain Theory: Understanding the "Proof of Work"

  • افزودن اثبات کار به بلاک چین Adding the Proof of Work to our Blockchain

  • از جمله اثبات کار در عملکرد معدن ما Including the Proof of Work in our Mining Function

  • رفع خطای Hash Order Fixing a Hash Order Fault

  • تقسیم کردن کد ما Splitting Up our Code

  • زمان تمرین - کتابخانه استاندارد Time to Practice - The Standard Library

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

کار با فایل ها Working with Files

  • معرفی ماژول Module Introduction

  • مدیریت دسترسی به فایل Handling File Access

  • خواندن داده ها از یک فایل Reading Data From a File

  • خواندن مطالب چند خطی Reading Multi-Line Content

  • با استفاده از عبارت Block "with". Using the "with" Block Statement

  • افزودن دسترسی به فایل به بلاک چین Adding File Access to our Blockchain

  • تبدیل رشته ها به اشیاء پایتون Converting Strings Into Python Objects

  • ذخیره سازی داده ها با Pickle Storing Data with Pickle

  • مقایسه Pickle و JSON Comparing Pickle & JSON

  • تغییر پروژه به JSON Changing the Project Back to JSON

  • چرا ما به مدیریت صحیح خطا نیاز داریم؟ Why we need Proper Error Handling

  • زمان تمرین - کار با فایل ها Time to Practice - Working with Files

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

کار با فایل ها Working with Files

  • معرفی ماژول Module Introduction

  • مدیریت دسترسی به فایل Handling File Access

  • خواندن داده ها از یک فایل Reading Data From a File

  • خواندن مطالب چند خطی Reading Multi-Line Content

  • با استفاده از عبارت Block "with". Using the "with" Block Statement

  • افزودن دسترسی به فایل به بلاک چین Adding File Access to our Blockchain

  • تبدیل رشته ها به اشیاء پایتون Converting Strings Into Python Objects

  • ذخیره سازی داده ها با Pickle Storing Data with Pickle

  • مقایسه Pickle و JSON Comparing Pickle & JSON

  • تغییر پروژه به JSON Changing the Project Back to JSON

  • چرا ما به مدیریت صحیح خطا نیاز داریم؟ Why we need Proper Error Handling

  • زمان تمرین - کار با فایل ها Time to Practice - Working with Files

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

رسیدگی به خطاها و اشکال زدایی Handling Errors & Debugging

  • معرفی ماژول Module Introduction

  • یافتن خطاهای منطقی با دیباگر Finding Logical Errors with the Debugger

  • پیدا کردن خطاهای نحوی Finding Syntax Errors

  • با استفاده از "try" برای یافتن خطاهای زمان اجرا Using "try" to Find Runtime Errors

  • کدام خطاها را باید مدیریت کنید؟ Which Errors Should you Handle?

  • اضافه کردن کنترل کننده خطا به بلاک چین Adding Error Handlers to our Blockchain

  • رسیدگی به خطاهای فایل خالی Handling Empty File Errors

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

رسیدگی به خطاها و اشکال زدایی Handling Errors & Debugging

  • معرفی ماژول Module Introduction

  • یافتن خطاهای منطقی با دیباگر Finding Logical Errors with the Debugger

  • پیدا کردن خطاهای نحوی Finding Syntax Errors

  • با استفاده از "try" برای یافتن خطاهای زمان اجرا Using "try" to Find Runtime Errors

  • کدام خطاها را باید مدیریت کنید؟ Which Errors Should you Handle?

  • اضافه کردن کنترل کننده خطا به بلاک چین Adding Error Handlers to our Blockchain

  • رسیدگی به خطاهای فایل خالی Handling Empty File Errors

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

برنامه نویسی شی گرا Object Oriented Programming

  • معرفی ماژول Module Introduction

  • برنامه نویسی شی گرا چیست؟ What is Object Oriented Programming?

  • درک کلاس ها Understanding Classes

  • ایجاد کلاس Creating a Class

  • مقایسه کلاس ها، نمونه ها و دیکشنری ها Comparing Classes, Instances & Dictionaries

  • درک ویژگی های کلاس Understanding Class Attributes

  • ویژگی های سازنده و نمونه Constructor & Instance Attributes

  • کلاس های چاپ با روش های خاص Printing Classes with Special Methods

  • خصوصیات خصوصی و عمومی Private & Public Attributes

  • درک وراثت Understanding Inheritance

  • برنامه ریزی کلاس های بلاک چین Planning Blockchain Classes

  • اضافه کردن یک کلاس "Block" به بلاک چین Adding a "Block" Class to the Blockchain

  • مشکلی با آرگومان های پیش فرض An Issue with Default Arguments

  • ذخیره اشیاء کلاس سفارشی از طریق json Saving Custom Class Objects via .json

  • اضافه کردن یک کلاس "معامله". Adding a "Transaction" Class

  • ارث در عمل Inheritance in Action

  • اضافه کردن یک کلاس کمکی "تأیید". Adding a "Verification" Helper Class

  • راه اندازی کلاس "Node". Initialising the "Node" Class

  • تبدیل بلاک چین به یک کلاس Turning the Blockchain Into a Class

  • اضافه کردن یک کلاس "گره". Adding a "Node" Class

  • درک "نمونه" در مقابل "کلاس" در مقابل "روش های استاتیک" و "ویژگی ها" Understanding "Instance" vs "Class" vs "Static Methods" & "Attributes"

  • استفاده از روش های "Static" و "Class" در کلاس "Verification". Using "Static" & "Class" Methods on the "Verification" Class

  • استفاده از خصوصیات خصوصی در بلاک چین Using Private Attributes in the Blockchain

  • ویژگی ها در مقابل ویژگی ها Properties vs Attributes

  • زمان تمرین - برنامه نویسی شی گرا Time to Practice - Object Oriented Programming

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

برنامه نویسی شی گرا Object Oriented Programming

  • معرفی ماژول Module Introduction

  • برنامه نویسی شی گرا چیست؟ What is Object Oriented Programming?

  • درک کلاس ها Understanding Classes

  • ایجاد کلاس Creating a Class

  • مقایسه کلاس ها، نمونه ها و دیکشنری ها Comparing Classes, Instances & Dictionaries

  • درک ویژگی های کلاس Understanding Class Attributes

  • ویژگی های سازنده و نمونه Constructor & Instance Attributes

  • کلاس های چاپ با روش های خاص Printing Classes with Special Methods

  • خصوصیات خصوصی و عمومی Private & Public Attributes

  • درک وراثت Understanding Inheritance

  • برنامه ریزی کلاس های بلاک چین Planning Blockchain Classes

  • اضافه کردن یک کلاس "Block" به بلاک چین Adding a "Block" Class to the Blockchain

  • مشکلی با آرگومان های پیش فرض An Issue with Default Arguments

  • ذخیره اشیاء کلاس سفارشی از طریق json Saving Custom Class Objects via .json

  • اضافه کردن یک کلاس "معامله". Adding a "Transaction" Class

  • ارث در عمل Inheritance in Action

  • اضافه کردن یک کلاس کمکی "تأیید". Adding a "Verification" Helper Class

  • راه اندازی کلاس "Node". Initialising the "Node" Class

  • تبدیل بلاک چین به یک کلاس Turning the Blockchain Into a Class

  • اضافه کردن یک کلاس "گره". Adding a "Node" Class

  • درک "نمونه" در مقابل "کلاس" در مقابل "روش های استاتیک" و "ویژگی ها" Understanding "Instance" vs "Class" vs "Static Methods" & "Attributes"

  • استفاده از روش های "Static" و "Class" در کلاس "Verification". Using "Static" & "Class" Methods on the "Verification" Class

  • استفاده از خصوصیات خصوصی در بلاک چین Using Private Attributes in the Blockchain

  • ویژگی ها در مقابل ویژگی ها Properties vs Attributes

  • زمان تمرین - برنامه نویسی شی گرا Time to Practice - Object Oriented Programming

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

ماژول ها Modules

  • معرفی ماژول Module Introduction

  • ایجاد بسته ها - بسته های ماژول Creating Packages - Module Bundles

  • پوشه "pycache". The "pycache" Folder

  • ماژول Docstrings Module Docstrings

  • کنترل صادرات Controlling Exports

  • درک متن اجرا و "__name__" Understanding Execution Context & "__name__"

  • چرا ما به حفاظت از معاملات کلید خصوصی و عمومی نیاز داریم؟ Why we Need a Private & Public Key Transaction Protection

  • استفاده از Anaconda برای نصب بسته های شخص ثالث Using Anaconda to Install Third Party Packages

  • استفاده از محیط های مجازی Using Virtual Environments

  • به جای PyCrypto از Pycryptodome استفاده کنید Use Pycryptodome instead of PyCrypto

  • تولید کلید با بسته شخص ثالث Generating Keys with a Third Party Package

  • اتصال Node & Wallet Connecting the Node & the Wallet

  • ایجاد کلید در گره Generating Keys on the Node

  • ذخیره و بارگیری کلیدها در فایل ها Saving & Loading Keys to Files

  • ایجاد امضای معاملات Creating Transaction Signatures

  • اضافه کردن یک امضا به معاملات ما Adding a Signature to our Transactions

  • تایید امضاها Verifying Signatures

  • بهبود منطق تأیید Improving the Verification Logic

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

ماژول ها Modules

  • معرفی ماژول Module Introduction

  • ایجاد بسته ها - بسته های ماژول Creating Packages - Module Bundles

  • پوشه "pycache". The "pycache" Folder

  • ماژول Docstrings Module Docstrings

  • کنترل صادرات Controlling Exports

  • درک متن اجرا و "__name__" Understanding Execution Context & "__name__"

  • چرا ما به حفاظت از معاملات کلید خصوصی و عمومی نیاز داریم؟ Why we Need a Private & Public Key Transaction Protection

  • استفاده از Anaconda برای نصب بسته های شخص ثالث Using Anaconda to Install Third Party Packages

  • استفاده از محیط های مجازی Using Virtual Environments

  • به جای PyCrypto از Pycryptodome استفاده کنید Use Pycryptodome instead of PyCrypto

  • تولید کلید با بسته شخص ثالث Generating Keys with a Third Party Package

  • اتصال Node & Wallet Connecting the Node & the Wallet

  • ایجاد کلید در گره Generating Keys on the Node

  • ذخیره و بارگیری کلیدها در فایل ها Saving & Loading Keys to Files

  • ایجاد امضای معاملات Creating Transaction Signatures

  • اضافه کردن یک امضا به معاملات ما Adding a Signature to our Transactions

  • تایید امضاها Verifying Signatures

  • بهبود منطق تأیید Improving the Verification Logic

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

اضافه کردن HTTP با Flask Adding HTTP with Flask

  • معرفی ماژول Module Introduction

  • درخواست های HTTP - مبانی HTTP Requests - The Basics

  • درک API-Endpoints/URL Understanding API-Endpoints/ URLs

  • فرمت های داده Data Formats

  • برنامه ریزی API ما Planning our API

  • تنظیم محیط خود با فلاسک Setting Up our Environment with Flask

  • اضافه کردن اولین مسیر ما Adding our First Route

  • نصب پستچی Installing Postman

  • افزودن یک درخواست POST Adding a POST Request

  • راه اندازی مسیرهایی برای مدیریت کیف پول ما Setting Up Routes to Manage our Wallet

  • وجوه برگشتی Returning Funds

  • افزودن تراکنش ها Adding Transactions

  • واکشی معاملات باز Fetching Open Transactions

  • تست کلید عمومی Testing the Public Key

  • افزودن رابط کاربری Adding a User Interface

  • اختیاری: پیکربندی UI ما - ایجاد کیف پول Optional: Configuring our UI - Creating a Wallet

  • اختیاری: پیکربندی UI ما - بارگیری کیف پول و افزودن استخراج و معاملات Optional: Configuring our UI - Loading a Wallet and Adding Mining & Transactions

  • کاوش در رابط کاربری ما Exploring our UI

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

اضافه کردن HTTP با Flask Adding HTTP with Flask

  • معرفی ماژول Module Introduction

  • درخواست های HTTP - مبانی HTTP Requests - The Basics

  • درک API-Endpoints/URL Understanding API-Endpoints/ URLs

  • فرمت های داده Data Formats

  • برنامه ریزی API ما Planning our API

  • تنظیم محیط خود با فلاسک Setting Up our Environment with Flask

  • اضافه کردن اولین مسیر ما Adding our First Route

  • نصب پستچی Installing Postman

  • افزودن یک درخواست POST Adding a POST Request

  • راه اندازی مسیرهایی برای مدیریت کیف پول ما Setting Up Routes to Manage our Wallet

  • وجوه برگشتی Returning Funds

  • افزودن تراکنش ها Adding Transactions

  • واکشی معاملات باز Fetching Open Transactions

  • تست کلید عمومی Testing the Public Key

  • افزودن رابط کاربری Adding a User Interface

  • اختیاری: پیکربندی UI ما - ایجاد کیف پول Optional: Configuring our UI - Creating a Wallet

  • اختیاری: پیکربندی UI ما - بارگیری کیف پول و افزودن استخراج و معاملات Optional: Configuring our UI - Loading a Wallet and Adding Mining & Transactions

  • کاوش در رابط کاربری ما Exploring our UI

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

شبکه گره The Node Network

  • معرفی ماژول Module Introduction

  • اضافه کردن روش های مدیریت گره به بلاک چین Adding Node Management Methods to the Blockchain

  • راه اندازی مسیرها برای افزودن گره ها Setting Up Routes to Add Nodes

  • افزودن یک مسیر حذف گره Adding a Remove Node Route

  • افزودن "get_Nodes" برای دریافت همه گره ها Adding "get_Nodes" to get all Nodes

  • ضمیمه کردن رابط کاربری Node Attaching a Node User Interface

  • اجرای چندین گره Running Multiple Nodes

  • ارسال درخواست از داخل پایتون Sending Requests from within Python

  • تراکنش های پخش - اضافه کردن عملکرد و مسیر Broadcasting Transactions - Adding the Function & Route

  • تراکنش های پخش - آزمایش و رفع خطاها Broadcasting Transactions - Testing & Fixing Errors

  • پخش بلوک های جدید: افزودن عملکرد و مسیر Broadcasting New Blocks: Adding the Function & Route

  • پخش بلوک های جدید: اطلاع رسانی به گره های همتا Broadcasting New Blocks: Informing the Peer Nodes

  • تراکنش های پخش: آزمایش Broadcasting Transactions: Testing

  • حل تعارضات Solving Conflicts

  • درک اجماع Understanding Consensus

  • یافتن تضادها Finding Conflicts

  • پیاده سازی الگوریتم اجماع Implementing a Consensus Algorithm

  • آزمایش اجماع Testing Consensus

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

شبکه گره The Node Network

  • معرفی ماژول Module Introduction

  • اضافه کردن روش های مدیریت گره به بلاک چین Adding Node Management Methods to the Blockchain

  • راه اندازی مسیرها برای افزودن گره ها Setting Up Routes to Add Nodes

  • افزودن یک مسیر حذف گره Adding a Remove Node Route

  • افزودن "get_Nodes" برای دریافت همه گره ها Adding "get_Nodes" to get all Nodes

  • ضمیمه کردن رابط کاربری Node Attaching a Node User Interface

  • اجرای چندین گره Running Multiple Nodes

  • ارسال درخواست از داخل پایتون Sending Requests from within Python

  • تراکنش های پخش - اضافه کردن عملکرد و مسیر Broadcasting Transactions - Adding the Function & Route

  • تراکنش های پخش - آزمایش و رفع خطاها Broadcasting Transactions - Testing & Fixing Errors

  • پخش بلوک های جدید: افزودن عملکرد و مسیر Broadcasting New Blocks: Adding the Function & Route

  • پخش بلوک های جدید: اطلاع رسانی به گره های همتا Broadcasting New Blocks: Informing the Peer Nodes

  • تراکنش های پخش: آزمایش Broadcasting Transactions: Testing

  • حل تعارضات Solving Conflicts

  • درک اجماع Understanding Consensus

  • یافتن تضادها Finding Conflicts

  • پیاده سازی الگوریتم اجماع Implementing a Consensus Algorithm

  • آزمایش اجماع Testing Consensus

  • بسته شدن Wrap Up

  • منابع و لینک های مفید Useful Resources & Links

مراحل بعدی و جمع بندی دوره Next Steps and Course Roundup

  • معرفی ماژول Module Introduction

  • PEP 8 را فراموش نکنید Don't Forget PEP 8

  • با استفاده از PEP 8 Using PEP 8

  • استفاده از نظرات Using Comments

  • غواصی عمیق تر به پایتون Diving Deeper Into Python

  • بهبود بلاک چین Improving the Blockchain

  • خلاصه دوره Course Roundup

  • لینک های بیشتر Further Links

  • امتیاز: محتوای بیشتر! Bonus: More Content!

مراحل بعدی و جمع بندی دوره Next Steps and Course Roundup

  • معرفی ماژول Module Introduction

  • PEP 8 را فراموش نکنید Don't Forget PEP 8

  • با استفاده از PEP 8 Using PEP 8

  • استفاده از نظرات Using Comments

  • غواصی عمیق تر به پایتون Diving Deeper Into Python

  • بهبود بلاک چین Improving the Blockchain

  • خلاصه دوره Course Roundup

  • لینک های بیشتر Further Links

  • امتیاز: محتوای بیشتر! Bonus: More Content!

نمایش نظرات

آموزش پایتون - راهنمای عملی [نسخه 2023]
جزییات دوره
17.5 hours
230
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
28,033
4.7 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Maximilian Schwarzmüller Maximilian Schwarzmüller

دارای گواهینامه AWS، توسعه دهنده وب و مدرس حرفه ای

Academind by Maximilian Schwarzmüller Academind by Maximilian Schwarzmüller

آموزش آنلاین