logo

Підручник з Python | Мова програмування Python

Python це широко використовувана мова програмування, яка пропонує кілька унікальних функцій і переваг порівняно з такими мовами, як Java і C++. Наш підручник з Python детально пояснює основи та розширені концепції Python, починаючи з інсталяції, умовні твердження , цикли , вбудовані структури даних , об’єктно-орієнтоване програмування , генератори , обробка винятків , Python RegEx та багато інших концепцій. Цей підручник призначений для початківців і працюючих професіоналів.

Наприкінці 1980-х рр. Гвідо ван Россум мріяв розробити Python. Перша версія Python 0.9.0 був випущений у 1991 році . З моменту свого випуску Python почав набирати популярність. Згідно з повідомленнями, зараз Python є найпопулярнішою мовою програмування серед розробників через високі вимоги до неї в сфері технологій.

Що таке Python

Python — це універсальна, динамічно типізована, високорівнева, компільована та інтерпретована, яка збирає сміття та суто об’єктно-орієнтована мова програмування, яка підтримує процедурне, об’єктно-орієнтоване та функціональне програмування.

Особливості Python:

    Простий у використанні та читанні -Синтаксис Python зрозумілий і легкий для читання, що робить його ідеальною мовою як для початківців, так і для досвідчених програмістів. Ця простота може призвести до швидшого розвитку та зменшити ймовірність помилок.Динамічно введений- Типи даних змінних визначаються під час виконання. Під час написання коду нам не потрібно вказувати тип даних змінної.Високий рівень- Мова високого рівня означає код, який читається людиною.Складено та інтерпретовано- Код Python спочатку компілюється в байт-код, а потім інтерпретується рядок за рядком. Коли ми завантажуємо Python у нашу системну форму орг ми завантажуємо стандартну реалізацію Python, відому як CPython. CPython вважається відповідним і інтерпретованим.Зібрано сміття- Розподіл пам'яті та видалення пам'яті керуються автоматично. Програмістам не потрібно спеціально керувати пам'яттю.Чисто об'єктно-орієнтований- Він відноситься до всього як до об’єкта, включаючи числа та рядки.Кросплатформна сумісність- Python можна легко встановити на Windows, macOS і різні дистрибутиви Linux, дозволяючи розробникам створювати програмне забезпечення, яке працює в різних операційних системах.Багата стандартна бібліотека- Python поставляється з кількома стандартними бібліотеками, які надають готові до використання модулі та функції для різних завдань, починаючи від веб-розробка і маніпулювання даними до машинне навчання і мережі .Відкрите джерело- Python – це безкоштовна мова програмування з відкритим кодом. В результаті він використовується в кількох секторах і дисциплінах.

Python має багато веб-активи , проекти з відкритим кодом , і динамічна спільнота . Вивчення мови, спільна робота над проектами та внесок в екосистему Python — усе це дуже легко для розробників.

Завдяки простій мовній структурі Python легше зрозуміти та писати код. Це робить його фантастичною мовою програмування для новачків. Крім того, він допомагає досвідченим програмістам писати чіткий код без помилок.

Python має багато бібліотек сторонніх розробників, які можна використовувати для полегшення роботи. Ці бібліотеки охоплюють багато областей, наприклад веб-розробку, наукові обчислення, аналіз даних тощо.

Java проти Python

Python є чудовим вибором для швидкої розробки та сценаріїв. У той час як Java наголошує на сильній системі типів і об’єктно-орієнтованому програмуванні.

Ось кілька основних програм, які ілюструють ключові відмінності між ними.

Друк 'Hello World'

Код Python:

 print('Hello World)' 

У Python це один рядок коду. Для друку «Hello World» потрібен простий синтаксис

Код Java:

 public class HelloWorld { public static void main(String[] args) { System.out.println('Hello, World!'); } } 

У Java нам потрібно оголошувати класи, структури методів і багато іншого.

Хоча обидві програми видають однаковий результат, ми можемо помітити різницю в синтаксисі оператора друку.

сторінки сервера java
  • На Python легко вивчати та писати код. Хоча в Java для виконання певних завдань потрібно більше коду.
  • Python має динамічну типізацію, тобто нам не потрібно оголошувати змінну, тоді як Java має статистичну типізацію, тобто нам потрібно оголошувати тип змінної.
  • Python підходить для різних областей, таких як Data Science, Machine Learning, Web development тощо. Тоді як Java підходить для веб-розробки, розробки мобільних додатків (Android) тощо.

Базовий синтаксис Python

У мові програмування Python не використовуються фігурні дужки чи крапки з комою. Це англійська мова. Але Python використовує відступи для визначення блоку коду. Відступ — це не що інше, як додавання пробілу перед оператором, коли це необхідно.

Наприклад -

 def func(): statement 1 statement 2 ………………… ………………… statement N 

У наведеному вище прикладі оператори, розташовані на одному рівні праворуч, належать функції. Як правило, ми можемо використовувати чотири пробіли для визначення відступу.

Замість крапки з комою, яка використовується в інших мовах, Python закінчує свої оператори символом NewLine.

Python є мовою з урахуванням регістру, що означає, що великі та малі літери обробляються по-різному. Наприклад, 'name' і 'Name' є двома різними змінними в Python.

У Python коментарі можна додавати за допомогою символу «#». Будь-який текст, написаний після символу '#', вважається коментарем і ігнорується інтерпретатором. Цей прийом корисний для додавання приміток до коду або тимчасового вимкнення блоку коду. Це також допомагає іншим розробникам краще зрозуміти код.

'якщо' , 'otherwise', 'for' , 'while' , 'try', 'except' і 'finally' — це кілька зарезервованих ключових слів у Python, які не можна використовувати як імена змінних. Ці терміни використовуються в мові з особливих причин і мають фіксоване значення. Якщо ви використовуєте ці ключові слова, ваш код може містити помилки, або інтерпретатор може відхилити їх як потенційні нові змінні.

Історія Python

Python створив Гвідо ван Россум . Наприкінці 1980-х років Гвідо ван Россум, голландський програміст, почав працювати над Python у Centrum Wiskunde & Informatica (CWI) у Нідерландах. Він хотів створити наступника Мова програмування ABC це було б легко читати та ефективно.

У лютому 1991 року була випущена перша публічна версія Python, версія 0.9.0. Це ознаменувало офіційне народження Python як проект з відкритим кодом . Мова була названа на честь британського комедійного серіалу ' Літаючий цирк Монті Пайтона '.

Розробка Python пройшла кілька етапів. У січні 1994 року Python 1.0 був випущений як зручна та стабільна мова програмування. Ця версія включала багато функцій, які все ще присутні в Python сьогодні.

З 1990-х по 2000-ті роки , Python набув популярності завдяки своїй простоті, читабельності та універсальності. У жовтні 2000 року було випущено Python 2.0 . Python 2.0 представив розуміння списків, збирання сміття та підтримку Unicode.

У грудні 2008 року було випущено Python 3.0. У Python 3.0 було внесено кілька зворотно несумісних змін для покращення читабельності коду та зручності обслуговування.

Протягом 2010-х років популярність Python зросла, особливо в таких сферах, як машинне навчання та веб-розробка. Його багата екосистема бібліотек і фреймворків зробила його улюбленим серед розробників.

The Python Software Foundation (PSF) була заснована в 2001 році просувати, захищати та розвивати мову програмування Python та її спільноту.

Навіщо вивчати Python?

Python надає багато корисних функцій для програміста. Ці особливості роблять її найпопулярнішою та найпоширенішою мовою. Нижче ми перерахували кілька основних функцій Python.

    Простий у використанні та навчанні:Python має простий і легкий для розуміння синтаксис, на відміну від традиційних мов, таких як C, C++, Java тощо, що полегшує його вивчення початківцям.Виразна мова:Це дозволяє програмістам виражати складні концепції всього в кількох рядках коду або скорочує час розробника.Мова перекладу:Python не потребує компіляції, що дозволяє швидко розробляти та тестувати. Він використовує інтерпретатор замість компілятора.
  • Об'єктно-орієнтована мова : Він підтримує об’єктно-орієнтоване програмування, що полегшує написання багаторазового та модульного коду.
  • Відкрите джерело Мова: Python має відкритий вихідний код і його можна вільно використовувати, розповсюджувати та змінювати.розширюється:Python можна розширити модулями, написаними на C, C++ або іншими мовами.Вивчити стандартну бібліотеку:Стандартна бібліотека Python містить багато модулів і функцій, які можна використовувати для різних завдань, таких як маніпулювання рядками, веб-програмування тощо.Підтримка програмування GUI:Python надає декілька інтерфейсів GUI, наприклад Ткінтер і PyQt, що дозволяє розробникам легко створювати настільні програми.Інтегрований:Python можна легко інтегрувати з іншими мовами та технологіями, такими як C/C++, Java та . NET.Можливість вбудовування:Код Python можна вбудовувати в інші програми як мову сценаріїв.Динамічний розподіл пам'яті:Python автоматично керує розподілом пам’яті, що полегшує розробникам написання складних програм, не турбуючись про керування пам’яттю.Широкий вибір бібліотек і фреймворків:Python має величезну колекцію бібліотек і фреймворків, таких як NumPy, Pandas, Django та Flask, які можна використовувати для вирішення широкого кола проблем.Універсальність:Python є універсальною мовою в різних областях, таких як веб-розробка, машинне навчання, наука про дані, штучний інтелект, веб-розробка тощо.Високий попит:Із зростаючим попитом на автоматизацію та цифрову трансформацію потреба в розробниках Python зростає. Багато галузей шукають кваліфікованих розробників Python, які б допомогли створити їхню цифрову інфраструктуру.Підвищення продуктивності:Python має простий синтаксис і потужні бібліотеки, які можуть допомогти розробникам писати код швидше та ефективніше. Це може підвищити продуктивність і заощадити час для розробників і організацій.Великі дані та машинне навчання:Python став основною мовою для великих даних і машинного навчання. Python став популярним серед дослідників даних та інженерів машинного навчання завдяки таким бібліотекам, як NumPy, Pandas, Scikit-learn, TensorFlow тощо.

Де використовується Python?

Python — це популярна мова програмування загального призначення, яка використовується майже в усіх галузях техніки. Нижче наведено різні сфери використання Python.

    Data Science:Наука про дані – це велика сфера, і Python є важливою мовою для цієї галузі через її простоту, легкість у використанні та доступність потужних бібліотек аналізу даних і візуалізації, таких як NumPy, Pandas і Matplotlib.Настільні програми:PyQt і Ткінтер є корисними бібліотеками, які можна використовувати в графічних інтерфейсах користувача — настільних програмах на основі графічного інтерфейсу користувача. Є кращі мови для цього поля, але його можна використовувати з іншими мовами для створення програм.Консольні програми:Python також часто використовується для створення програм на основі командного рядка або консолі через його простоту використання та підтримку розширених функцій, таких як перенаправлення введення/виведення та конвеєр.Мобільні програми:Хоча Python зазвичай не використовується для створення мобільних додатків, його можна поєднувати з фреймворками, такими як Kivy або BeeWare, для створення кросплатформних мобільних додатків.Розробка програмного забезпечення:Python вважається однією з найкращих мов для створення програмного забезпечення. Python легко сумісний із програмним забезпеченням малого та великого масштабу.
  • Штучний інтелект : AI — це нова технологія, а Python — ідеальна мова для штучного інтелекту та машинного навчання завдяки наявності потужних бібліотек, таких як TensorFlow, Keras і PyTorch.
  • Веб-додатки:Python зазвичай використовується у веб-розробці на серверній частині з фреймворками, такими як Django та Flask, і на передній частині з такими інструментами, як JavaScript HTML і CSS.Корпоративні програми:Python можна використовувати для розробки великомасштабних корпоративних програм із такими функціями, як розподілене обчислення, мережа та паралельна обробка.Програми 3D CAD:Python можна використовувати для тривимірних програм автоматизованого проектування (САПР) за допомогою бібліотек, таких як Blender.Машинне навчання:Python широко використовується для машинного навчання завдяки своїй простоті, легкості використання та наявності потужних бібліотек машинного навчання.Програми комп’ютерного зору або обробки зображень:Python можна використовувати для програм комп’ютерного зору та обробки зображень за допомогою потужних бібліотек, таких як OpenCV і Scikit-image.Розпізнавання мови:Python можна використовувати для програм розпізнавання мовлення через такі бібліотеки, як SpeechRecognition і PyAudio.Наукові обчислення:Такі бібліотеки, як NumPy, SciPy і Pandas, надають розширені можливості числового обчислення для таких завдань, як аналіз даних, машинне навчання тощо.Освіта:Простий у вивченні синтаксис Python і наявність багатьох ресурсів роблять його ідеальною мовою для навчання програмуванню початківців.Тестування:Python використовується для написання автоматизованих тестів, надаючи такі фреймворки, як модульні тести та pytest, які допомагають писати тестові випадки та створювати звіти.Ігри:У Python є такі бібліотеки, як Pygame, які забезпечують платформу для розробки ігор за допомогою Python.IoT:Python використовується в IoT для розробки сценаріїв і програм для таких пристроїв, як Raspberry Pi, Arduino та інших.Мережа:Python використовується в мережі для розробки сценаріїв і програм для автоматизації мережі, моніторингу та керування нею.
  • DevOps : Python широко використовується в DevOps для автоматизації та сценаріїв керування інфраструктурою, керування конфігурацією та процесів розгортання.
  • Фінанси:Python має такі бібліотеки, як Pandas, Scikit-learn і Statsmodels для фінансового моделювання та аналізу.Аудіо та музика:У Python є такі бібліотеки, як Pyaudio, яка використовується для обробки, синтезу та аналізу аудіо, і Music21, яка використовується для аналізу та створення музики.Написання сценаріїв:Python використовується для написання службових сценаріїв для автоматизації таких завдань, як файлові операції, веб-збирання та популярні фреймворки та бібліотеки Python

    Python має широкий спектр бібліотек і фреймворків, які широко використовуються в різних сферах, таких як машинне навчання, штучний інтелект, веб-додатки тощо. Нижче наведено деякі популярні фреймворки та бібліотеки Python.

    Функція Python print().

    Функція Python print() використовується для відображення виведення на консоль або термінал. Це дозволяє нам відображати текст, змінні та інші дані в зручному для читання форматі.

    Синтаксис:

    print(object(s), sep=separator, end=end, file=file, flush=flush)

    Він приймає один або більше аргументів, розділених комою (,) і додає «новий рядок» у кінці за замовчуванням.

    Параметри:

    • object(s) – стільки, скільки ви хочете відобразити даних, спочатку буде перетворено на рядок і надруковано на консолі.
    • sep – розділяє об’єкти переданим роздільником, значення за умовчанням = ' '.
    • end - завершує рядок символом нового рядка
    • file - файловий об'єкт із методом запису, значення за умовчанням = sys.stdout

    приклад:

     # Displaying a string print('Hello, World!') # Displaying multiple values name = 'Aman' age = 21 print('Name:', name, 'Age:', age) # Printing variables and literals x = 5 y = 7 print('x =', x, 'y =', y, 'Sum =', x + y) # Printing with formatting percentage = 85.75 print('Score: {:.2f}%'.format(percentage)) 

    Вихід:

     Hello, World! Name: Aman Age: 21 X = 5 y = 7 Sum = 12 Score: 85.75% 

    У цьому прикладі оператор print використовується для друку рядкових, цілих чисел і значень з плаваючою точкою у форматі, зрозумілому людині.

    Оператор друку можна використовувати для налагодження, журналювання та надання інформації користувачеві.

    Умовні оператори Python

    Умовні оператори допомагають нам виконати окремий блок для конкретної умови. У цьому посібнику ми навчимося використовувати умовний вираз для виконання іншого блоку операторів. Python надає ключові слова if та else для встановлення логічних умов. The Еліф Ключове слово також використовується як умовний оператор.

    Приклад коду оператора if..else

     x = 10 y = 5 if x > y: print('x is greater than y') else: print('y is greater than or equal to x') 

    Вихід:

     x is greater than y 

    У наведеному вище коді ми маємо дві змінні, x і y, з 10 і 5 відповідно. Потім ми використали оператор if..else, щоб перевірити, чи x більше за y чи навпаки. Якщо перша умова виконується, друкується вислів «x більше за y». Якщо перша умова хибна, замість неї друкується висловлювання 'y більше або дорівнює x'.

    Ключове слово if перевіряє виконання умови та виконує блок коду в ньому. Код всередині блоку else виконується, якщо умова хибна. Таким чином оператор if..else допомагає нам виконувати різні блоки коду на основі умови.

    Ми дізнаємося про це більш детально в наступній статті підручника з Python.

    Цикли Python

    Іноді нам може знадобитися змінити потік програми. Виконання певного коду може знадобитися повторити кілька разів. Для цього в мовах програмування передбачені різноманітні цикли, здатні кілька разів повторювати певний код. Розгляньте наступний посібник, щоб детально зрозуміти твердження.

    Python для циклу

     fruits = ['apple', 'banana', 'cherry'] for x in fruits: print(x, end=' ') 

    Вихід:

     apple banana cherry 

    Python While Loop

     i = 1 while i<5: print(i, end=" " ) i +="1" < pre> <p> <strong>Output:</strong> </p> <pre> 1 2 3 4 </pre> <p>In the above example code, we have demonstrated using two types of loops in Python - For loop and While loop.</p> <p>The For loop is used to iterate over a sequence of items, such as a list, tuple, or string. In the example, we defined a list of fruits and used a for loop to print each fruit, but it can also be used to print a range of numbers.</p> <p>The While loop repeats a code block if the specified condition is true. In the example, we have initialized a variable i to 1 and used a while loop to print the value of i until it becomes greater than or equal to 6. The i += 1 statement is used to increment the value of i in each iteration.</p> <p>We will learn about them in the tutorial in detail.</p> <h2>Python Data Structures</h2> <p> <strong>Python offers four built-in data structures:</strong>  <strong>lists</strong>  ,  <strong>tuples</strong>  ,  <strong>sets</strong>  , and  <strong>dictionaries</strong>  that allow us to store data in an efficient way. Below are the commonly used data structures in Python, along with example code:</p> <h3>1. Lists </h3> <ul> <li>Lists are <strong>ordered collections</strong> of data elements of different data types.</li> <li>Lists are <strong>mutable</strong> meaning a list can be modified anytime.</li> <li>Elements can be <strong>accessed using indices</strong> .</li> <li>They are defined using square bracket &apos; <strong>[]</strong> &apos;.</li> </ul> <p> <strong>Example:</strong> </p> <pre> # Create a list fruits = [&apos;apple&apos;, &apos;banana&apos;, &apos;cherry&apos;] print(&apos;fuirts[1] =&apos;, fruits[1]) # Modify list fruits.append(&apos;orange&apos;) print(&apos;fruits =&apos;, fruits) num_list = [1, 2, 3, 4, 5] # Calculate sum sum_nums = sum(num_list) print(&apos;sum_nums =&apos;, sum_nums) </pre> <p> <strong>Output:</strong> </p> <pre> fuirts[1] = banana fruits = [&apos;apple&apos;, &apos;banana&apos;, &apos;cherry&apos;, &apos;orange&apos;] sum_nums = 15 </pre> <h3>2. Tuples </h3> <ul> <li>Tuples are also <strong>ordered collections</strong> of data elements of different data types, similar to Lists.</li> <li>Elements can be <strong>accessed using indices</strong> .</li> <li>Tuples are <strong>immutable</strong> meaning Tuples can&apos;t be modified once created.</li> <li>They are defined using open bracket &apos; <strong>()</strong> &apos;.</li> </ul> <p> <strong>Example:</strong> </p> <pre> # Create a tuple point = (3, 4) x, y = point print(&apos;(x, y) =&apos;, x, y) # Create another tuple tuple_ = (&apos;apple&apos;, &apos;banana&apos;, &apos;cherry&apos;, &apos;orange&apos;) print(&apos;Tuple =&apos;, tuple_) </pre> <p> <strong>Output:</strong> </p> <pre> (x, y) = 3 4 Tuple = (&apos;apple&apos;, &apos;banana&apos;, &apos;cherry&apos;, &apos;orange&apos;) </pre> <h3>3. Sets </h3> <ul> <li>Sets are <strong>unordered</strong> collections of immutable data elements of different data types.</li> <li>Sets are <strong>mutable</strong> .</li> <li>Elements can&apos;t be accessed using indices.</li> <li>Sets <strong>do not contain duplicate elements</strong> .</li> <li>They are defined using curly braces &apos; <strong>{}</strong> &apos;</li> </ul> <p> <strong>Example:</strong> </p> <pre> # Create a set set1 = {1, 2, 2, 1, 3, 4} print(&apos;set1 =&apos;, set1) # Create another set set2 = {&apos;apple&apos;, &apos;banana&apos;, &apos;cherry&apos;, &apos;apple&apos;, &apos;orange&apos;} print(&apos;set2 =&apos;, set2) </pre> <p> <strong>Output:</strong> </p> <pre> set1 = {1, 2, 3, 4} set2 = {&apos;apple&apos;, &apos;cherry&apos;, &apos;orange&apos;, &apos;banana&apos;} </pre> <h3>4. Dictionaries </h3> <ul> <li>Dictionary are <strong>key-value pairs</strong> that allow you to associate values with unique keys.</li> <li>They are defined using curly braces &apos; <strong>{}</strong> &apos; with key-value pairs <strong>separated by colons &apos;:&apos;</strong> .</li> <li>Dictionaries are <strong>mutable</strong> .</li> <li>Elements can be accessed using keys.</li> </ul> <p> <strong>Example:</strong> </p> <pre> # Create a dictionary person = {&apos;name&apos;: &apos;Umesh&apos;, &apos;age&apos;: 25, &apos;city&apos;: &apos;Noida&apos;} print(&apos;person =&apos;, person) print(person[&apos;name&apos;]) # Modify Dictionary person[&apos;age&apos;] = 27 print(&apos;person =&apos;, person) </pre> <p> <strong>Output:</strong> </p> <pre> person = {&apos;name&apos;: &apos;Umesh&apos;, &apos;age&apos;: 25, &apos;city&apos;: &apos;Noida&apos;} Umesh person = {&apos;name&apos;: &apos;Umesh&apos;, &apos;age&apos;: 27, &apos;city&apos;: &apos;Noida&apos;} </pre> <p>These are just a few examples of Python&apos;s built-in data structures. Each data structure has its own characteristics and use cases.</p> <h2>Python Functional Programming</h2> <p>This section of the Python tutorial defines some important tools related to functional programming, such as lambda and recursive functions. These functions are very efficient in accomplishing complex tasks. We define a few important functions, such as reduce, map, and filter. Python provides the functools module that includes various functional programming tools. Visit the following tutorial to learn more about functional programming.</p> <p>Recent versions of Python have introduced features that make functional programming more concise and expressive. For example, the &apos;walrus operator&apos;:= allows for inline variable assignment in expressions, which can be useful when working with nested function calls or list comprehensions.</p> <h2>Python Function</h2> <ol class="points"> <li>  <strong>Lambda Function</strong>  - A lambda function is a small, <strong>anonymous function</strong> that can take any number of arguments but can only have one expression. Lambda functions are often used in functional programming to create functions &apos;on the fly&apos; without defining a named function.</li> <li>  <strong>Recursive Function</strong>  - A recursive function is a function that calls itself to solve a problem. Recursive functions are often used in functional programming to perform complex computations or to traverse complex data structures.</li> <li> <a href="/python-map-function"> <strong>Map Function</strong> </a> - The map() function applies a given function to each item of an iterable and returns a new iterable with the results. The input iterable can be a list, tuple, or other.</li> <li> <a href="/python-filter-function"> <strong>Filter Function</strong> </a> - The filter() function returns an iterator from an iterable for which the function passed as the first argument returns True. It filters out the items from an iterable that do not meet the given condition.</li> <li> <a href="/reduce-python"> <strong>Reduce Function</strong> </a> - The reduce() function applies a function of two arguments cumulatively to the items of an iterable from left to right to reduce it to a single value.</li> <li>  <strong>functools Module</strong>  - The functools module in Python provides higher-order functions that operate on other functions, such as partial() and reduce().</li> <li>  <strong>Currying Function</strong>  - A currying function is a function that takes multiple arguments and returns a sequence of functions that each take a single argument.</li> <li>  <strong>Memoization Function</strong>  - Memoization is a technique used in functional programming to cache the results of expensive function calls and return the cached Result when the same inputs occur again.</li> <li>  <strong>Threading Function</strong>  - Threading is a technique used in functional programming to run multiple tasks simultaneously to make the code more efficient and faster.</li> </ol> <h2>Python Modules</h2> <p> Python modules are the program files that contain Python code or functions. Python has two types of modules - User-defined modules and built-in modules. A module the user defines, or our Python code saved with .py extension, is treated as a user-define module.</p> <p>Built-in modules are predefined modules of Python. To use the functionality of the modules, we need to import them into our current working program.</p> <p>Python modules are essential to the language&apos;s ecosystem since they offer reusable code and functionality that can be imported into any Python program. Here are a few examples of several Python modules, along with a brief description of each:</p> <p>  <strong>Math</strong>  : Gives users access to mathematical constants and pi and trigonometric functions.</p> <p>  <strong>Datetime</strong>  : Provides classes for a simpler way of manipulating dates, times, and periods.</p> <p> <a href="/python-os-module"> <strong>OS</strong> </a> : Enables interaction with the base operating system, including administration of processes and file system activities.</p> <p> <a href="/python-random-module"> <strong>Random</strong> </a> : The random function offers tools for generating random integers and picking random items from a list.</p> <p>  <strong>JSON</strong>  : JSON is a data structure that can be encoded and decoded and is frequently used in online APIs and data exchange. This module allows dealing with JSON. <br>  <strong>Re</strong>  : Supports regular expressions, a potent text-search and text-manipulation tool.</p> <p>  <strong>Collections</strong>  : Provides alternative data structures such as sorted dictionaries, default dictionaries, and named tuples.</p> <p>  <strong>NumPy</strong>  : NumPy is a core toolkit for scientific computing that supports numerical operations on arrays and matrices.</p> <p>  <strong>Pandas</strong>  : It provides high-level data structures and operations for dealing with time series and other structured data types.</p> <p>  <strong>Requests</strong>  : Offers a simple user interface for web APIs and performs HTTP requests.</p> <h2>Python File I/O</h2> <p>Files are used to store data in a computer disk. In this tutorial, we explain the built-in file object of Python. We can open a file using Python script and perform various operations such as writing, reading, and appending. There are various ways of opening a file. We are explained with the relevant example. We will also learn to perform read/write operations on binary files.</p> <p> <strong>Python&apos;s file input/output (I/O) system</strong> offers programs to communicate with files stored on a disc. Python&apos;s built-in methods for the file object let us carry out actions like reading, writing, and adding data to files.</p> <p>The <strong>open()</strong> method in Python makes a file object when working with files. The name of the file to be opened and the mode in which the file is to be opened are the two parameters required by this function. The mode can be used according to work that needs to be done with the file, such as &apos; <strong>r</strong> &apos; for reading, &apos; <strong>w</strong> &apos; for writing, or &apos; <strong>a</strong> &apos; for attaching.</p> <p>After successfully creating an object, different methods can be used according to our work. If we want to write in the file, we can use the write() functions, and if you want to read and write both, then we can use the append() function and, in cases where we only want to read the content of the file we can use read() function. Binary files containing data in a binary rather than a text format may also be worked with using Python. Binary files are written in a manner that humans cannot directly understand. The <strong>rb</strong> and <strong>wb</strong> modes can read and write binary data in binary files.</p> <h2>Python Exceptions</h2> <p>An exception can be defined as an unusual condition in a program resulting in an interruption in the flow of the program.</p> <p>Whenever an exception occurs, the program stops the execution, and thus the other code is not executed. Therefore, an exception is the run-time errors that are unable to handle to Python script. An exception is a Python object that represents an error.</p> <p>  <strong>Python Exceptions</strong>  are an important aspect of error handling in Python programming. When a program encounters an unexpected situation or error, it may raise an exception, which can interrupt the normal flow of the program.</p> <p>In Python, exceptions are represented as objects containing information about the error, including its type and message. The most common type of Exception in Python is the Exception class, a base class for all other built-in exceptions.</p> <p>To handle exceptions in Python, we use the <strong>try</strong> and <strong>except</strong> statements. The <strong>try</strong> statement is used to enclose the code that may raise an exception, while the <strong>except</strong> statement is used to define a block of code that should be executed when an exception occurs.</p> <p> <strong>For example, consider the following code:</strong> </p> <pre> try: x = int ( input (&apos;Enter a number: &apos;)) y = 10 / x print (&apos;Result:&apos;, y) except ZeroDivisionError: print (&apos;Error: Division by zero&apos;) except ValueError: print (&apos;Error: Invalid input&apos;) </pre> <p> <strong>Output:</strong> </p> <pre> Enter a number: 0 Error: Division by zero </pre> <p>In this code, we use the try statement to attempt to perform a division operation. If either of these operations raises an exception, the matching except block is executed.</p> <p>Python also provides many built-in exceptions that can be raised in similar situations. Some common built-in exceptions include <strong>IndexError, TypeError</strong> , and <strong>NameError</strong> . Also, we can define our custom exceptions by creating a new class that inherits from the Exception class.</p> <h2>Python CSV</h2> <p>A CSV stands for &apos;comma separated values&apos;, which is defined as a simple file format that uses specific structuring to arrange tabular data. It stores tabular data such as spreadsheets or databases in plain text and has a common format for data interchange. A CSV file opens into the Excel sheet, and the rows and columns data define the standard format.</p> <p>We can use the CSV.reader function to read a CSV file. This function returns a reader object that we can use to repeat over the rows in the CSV file. Each row is returned as a list of values, where each value corresponds to a column in the CSV file.</p> <p> <strong>For example, consider the following code:</strong> </p> <pre> import csv with open(&apos;data.csv&apos;, &apos;r&apos;) as file: reader = csv.reader(file) for row in reader: print(row) </pre> <p>Here, we open the file data.csv in read mode and create a <strong>csv.reader</strong> object using the <strong>csv.reader()</strong> function. We then iterate over the rows in the CSV file using a for loop and print each row to the console.</p> <p>We can use the  <strong>CSV.writer()</strong>  function to write data to a CSV file. It returns a writer object we can use to write rows to the CSV file. We can write rows by calling the <strong>writer ()</strong> method on the writer object.</p> <p> <strong>For example, consider the following code:</strong> </p> <pre> import csv data = [ [&apos;Name&apos;, &apos;Age&apos;, &apos;Country&apos;], [&apos;Alice&apos;, &apos;25&apos;, &apos;USA&apos;], [&apos;Bob&apos;, &apos;30&apos;, &apos;Canada&apos;], [&apos;Charlie&apos;, &apos;35&apos;, &apos;Australia&apos;] ] with open(&apos;data.csv&apos;, &apos;w&apos;) as file: writer = csv.writer(file) for row in data: writer.writerow(row) </pre> <p>In this program, we create a list of lists called data, where each inner list represents a row of data. We then open the file data.csv in write mode and create a <strong>CSV.writer</strong> object using the CSV.writer function. We then iterate over the rows in data using a for loop and write each row to the CSV file using the writer method.</p> <h2>Python Sending Mail</h2> <p>We can send or read a mail using the Python script. Python&apos;s standard library modules are useful for handling various protocols such as PoP3 and IMAP . Python provides the <a href="/python-sending-email-using-smtp">smtplib</a> module for sending emails using SMTP (Simple Mail Transfer Protocol). We will learn how to send mail with the popular email service SMTP from a Python script.</p> <h3>Python Magic Methods</h3> <p>The Python magic method is the special method that adds &apos;magic&apos; to a class. It starts and ends with double underscores, for example,  <strong>_init_</strong>  or  <strong>_str_</strong>  .</p> <p>The built-in classes define many magic methods. The <strong>dir()</strong> function can be used to see the number of magic methods inherited by a class. It has two prefixes and suffix underscores in the method name.</p> <ul> <li>Python magic methods are also known as <strong>dunder methods</strong> , short for &apos; double underscore &apos; methods because their names start and end with a double underscore.</li> <li>  <strong>Magic methods</strong>  are automatically invoked by the Python interpreter in certain situations, such as when an object is created, compared to another object, or printed.</li> <li>Magic methods can be used to customize the behavior of classes, such as defining how objects are compared, converted to strings, or accessed as containers.</li> <li>Some commonly used magic methods include  <strong>init</strong>  for initializing an object, str for converting an object to a string, <strong>eq</strong> for comparing two objects for equality, and  <strong>getitem</strong>  and <strong>setitem</strong> for accessing items in a container object.</li> </ul> <p>For example, the <strong>str</strong> magic method can define how an object should be represented as a string. Here&apos;s an example</p> <pre> class Person: def __init__(self, name, age): self.name = name self.age = age def __str__(self): return f&apos;{self.name} ({self.age})&apos; person = Person(&apos;Vikas&apos;, 22) print(person) </pre> <p> <strong>Output:</strong> </p> <pre> Vikas (22) </pre> <p>In this example, the str method is defined to return a formatted string representation of the Person object with the person&apos;s name and age.</p> <p>Another commonly used magic method is <strong>eq</strong> , which defines how objects should be compared for equality. Here&apos;s an example:</p> <pre> class Point: def __init__(self, x, y): self.x = x self.y = y def __eq__(self, other): return self.x == other.x and self.y == other.y point1 = Point(2, 3) point2 = Point(3, 4) point3 = Point(2, 3) print(point1 == point2) print(point1 == point3) </pre> <p> <strong>Output:</strong> </p> <pre> False True </pre> <p>In this example, the <strong>eq</strong> method is defined to return True if two Point objects have the same x and y coordinates and False otherwise.</p> <h2>Python Oops Concepts</h2> <p>Everything in Python is treated as an object, including integer values, floats, functions, classes, and none. Apart from that, Python supports all oriented concepts. Below is a brief introduction to the Oops concepts of Python.</p> <ul> <li> <a href="/classes-objects-python"> <strong>Classes and Objects</strong> </a> - Python classes are the blueprints of the Object. An object is a collection of data and methods that act on the data.</li> <li> <a href="/python-inheritance"> <strong>Inheritance</strong> </a> - An inheritance is a technique where one class inherits the properties of other classes.</li> <li> <a href="/python-constructor"> <strong>Constructor</strong> </a> - Python provides a special method __init__() which is known as a constructor. This method is automatically called when an object is instantiated.</li> <tr><td>Data Member</td> - A variable that holds data associated with a class and its objects. <li>  <strong>Polymorphism</strong>  - Polymorphism is a concept where an object can take many forms. In Python, polymorphism can be achieved through method overloading and method overriding.</li> </tr><tr><td>Method Overloading</td> - In Python, method overloading is achieved through default arguments, where a method can be defined with multiple parameters. The default values are used if some parameters are not passed while calling the method. <li>  <strong>Method Overriding</strong>  - Method overriding is a concept where a subclass implements a method already defined in its superclass.</li> <li>  <strong>Encapsulation</strong>  - Encapsulation is wrapping data and methods into a single unit. In Python, encapsulation is achieved through access modifiers, such as public, private, and protected. However, Python does not strictly enforce access modifiers, and the naming convention indicates the access level.</li> <li>  <strong>Data Abstraction</strong>  : A technique to hide the complexity of data and show only essential features to the user. It provides an interface to interact with the data. Data abstraction reduces complexity and makes code more modular, allowing developers to focus on the program&apos;s essential features.</li> </tr></ul> <p>To read the Oops concept in detail, visit the following resources.</p> <ul> <li> Python Oops Concepts - In Python, the object-oriented paradigm is to design the program using classes and objects. The object is related to real-word entities such as book, house, pencil, etc. and the class defines its properties and behaviours.</li> <li> <a href="/classes-objects-python">Python Objects and classes</a> - In Python, objects are instances of classes and classes are blueprints that defines structure and behaviour of data.</li> <li> <a href="/python-constructor">Python Constructor</a> - A constructor is a special method in a class that is used to initialize the object&apos;s attributes when the object is created.</li> <li> <a href="/python-inheritance">Python Inheritance</a> - Inheritance is a mechanism in which new class (subclass or child class) inherits the properties and behaviours of an existing class (super class or parent class).</li> <li> Python Polymorphism - Polymorphism allows objects of different classes to be treated as objects of a common superclass, enabling different classes to be used interchangeably through a common interface.</li> </ul> <h2>Python Advance Topics</h2> <p>Python includes many advances and useful concepts that help the programmer solve complex tasks. These concepts are given below.</p> <h3> Python Iterator </h3> <p>An iterator is simply an object that can be iterated upon. It returns one Object at a time. It can be implemented using the two special methods,  <strong>__iter__()</strong>  and __next__().</p> <p>Iterators in Python are objects that allow iteration over a collection of data. They process each collection element individually without loading the entire collection into memory.</p> <p>For example, let&apos;s create an iterator that returns the squares of numbers up to a given limit:</p> <pre> def __init__(self, limit): self.limit = limit self.n = 0 def __iter__(self): return self def __next__(self): if self.n <= 2 self.limit: square="self.n" ** self.n +="1" return else: raise stopiteration numbers="Squares(5)" for n in numbers: print(n) < pre> <p> <strong>Output:</strong> </p> <pre> 0 1 4 9 16 25 </pre> <p>In this example, we have created a class Squares that acts as an iterator by implementing the __iter__() and __next__() methods. The __iter__() method returns the Object itself, and the __next__() method returns the next square of the number until the limit is reached.</p> <p>To learn more about the iterators, visit our Python Iterators tutorial.</p> <h3> Python Generators </h3> <p>  <strong>Python generators</strong>  produce a sequence of values <strong>using a yield statement</strong> rather than a return since they are functions that return iterators. Generators terminate the function&apos;s execution while keeping the local state. It picks up right where it left off when it is restarted. Because we don&apos;t have to implement the iterator protocol thanks to this feature, writing iterators is made simpler. Here is an illustration of a straightforward generator function that produces squares of numbers:</p> <pre> # Generator Function def square_numbers(n): for i in range(n): yield i**2 # Create a generator object generator = square_numbers(5) # Print the values generated by the generator for num in generator: print(num) </pre> <p> <strong>Output:</strong> </p> <pre> 0 1 4 9 16 </pre> <h2>Python Modifiers</h2> <p>  <strong>Python Decorators</strong>  are functions used to modify the behaviour of another function. They allow adding functionality to an existing function without modifying its code directly. Decorators are defined using the <strong>@</strong> symbol followed by the name of the decorator function. They can be used for logging, timing, caching, etc.</p> <p>Here&apos;s an example of a decorator function that adds timing functionality to another function:</p> <pre> import time from math import factorial # Decorator to calculate time taken by # the function def time_it(func): def wrapper(*args, **kwargs): start = time.time() result = func(*args, **kwargs) end = time.time() print(f&apos;{func.__name__} took {end-start:.5f} seconds to run.&apos;) return result return wrapper @time_it def my_function(n): time.sleep(2) print(f&apos;Factorial of {n} = {factorial(n)}&apos;) my_function(25) </pre> <p> <strong>Output:</strong> </p> <pre> </pre> <p>In the above example, the time_it decorator function takes another function as an argument and returns a wrapper function. The wrapper function calculates the time to execute the original function and prints it to the console. The @time_it decorator is used to apply the time_it function to the my_function function. When my_function is called, the decorator is executed, and the timing functionality is added.</p> <h2>Python MySQL</h2> <p>Python MySQL is a powerful relational database management system. We must set up the environment and establish a connection to use MySQL with Python. We can create a new database and tables using SQL commands in Python.</p> <ul> <li>  <strong>Environment Setup</strong>  : Installing and configuring MySQL Connector/Python to use Python with MySQL.</li> <li>  <strong>Database Connection</strong>  : Establishing a connection between Python and MySQL database using MySQL Connector/Python.</li> <li>  <strong>Creating New Database</strong>  : Creating a new database in MySQL using Python.</li> <li>  <strong>Creating Tables</strong>  : Creating tables in the MySQL database with Python using SQL commands.</li> <li>  <strong>Insert Operation</strong>  : Insert data into MySQL tables using Python and SQL commands.</li> <li>  <strong>Read Operation</strong>  : Reading data from MySQL tables using Python and SQL commands.</li> <li>  <strong>Update Operation</strong>  : Updating data in MySQL tables using Python and SQL commands.</li> <li>  <strong>Join Operation</strong>  : Joining two or more tables in MySQL using Python and SQL commands.</li> <li>  <strong>Performing Transactions</strong>  : Performing a group of SQL queries as a single unit of work in MySQL using Python.</li> </ul> <p>Other relative points include handling errors, creating indexes, and using stored procedures and functions in MySQL with Python.</p> <h2>Python MongoDB</h2> <p> Python MongoDB is a popular NoSQL database that stores data in JSON-like documents. It is schemaless and provides high scalability and flexibility for data storage. We can use MongoDB with Python using the PyMongo library, which provides a simple and intuitive interface for interacting with MongoDB.</p> <p>Here are some common tasks when working with MongoDB in Python:</p> <ol class="points"> <li>  <strong>Environment Setup</strong>  : Install and configure MongoDB and PyMongo library on your system.</li> <li>  <strong>Database Connection</strong>  : Connect to a MongoDB server using the MongoClient class from PyMongo.</li> <li>  <strong>Creating a new database</strong>  : Use the MongoClient Object to create a new database.</li> <li>  <strong>Creating collections</strong>  : Create collections within a database to store documents.</li> <li>  <strong>Inserting documents</strong>  : Insert new documents into a collection using the insert_one() or insert_many() methods.</li> <li>  <strong>Querying documents</strong>  : Retrieve documents from a collection using various query methods like find_one(), find(), etc.</li> <li>  <strong>Updating documents</strong>  : Modify existing documents in a collection using update_one() or update_many() methods.</li> <li>  <strong>Deleting documents</strong>  : Remove documents from a collection using the delete_one() or delete_many() methods.</li> <li>  <strong>Aggregation</strong>  : Perform aggregation operations like grouping, counting, etc., using the aggregation pipeline framework.</li> <tr><td>Indexing:</td> Improve query performance by creating indexes on fields in collections. </tr></ol> <p>There are many more advanced topics in MongoDB, such as data sharding, replication, and more, but these tasks cover the basics of working with MongoDB in Python.</p> <h2> Python SQLite </h2> <p>Relational databases are built and maintained using Python SQLite, a compact, serverless, self-contained database engine. Its mobility and simplicity make it a popular option for local or small-scale applications. Python has a built-in module for connecting to SQLite databases called SQLite3, enabling developers to work with SQLite databases without difficulties.</p> <p>Various API methods are available through the SQLite3 library that may be used to run SQL queries, insert , select , update , and remove data, as well as get data from tables. Additionally, it allows transactions, allowing programmers to undo changes in case of a problem. Python SQLite is a fantastic option for creating programs that need an embedded database system, including desktop, mobile, and modest-sized web programs. SQLite has become popular among developers for lightweight apps with database functionality thanks to its ease of use, portability, and smooth connection with Python.</p> <h2> Python CGI </h2> <p>  <strong>Python CGI</strong>  is a technology for running scripts through web servers to produce dynamic online content. It offers a communication channel and a dynamic content generation interface for external CGI scripts and the web server. Python CGI scripts may create HTML web pages, handle form input, and communicate with databases. Python CGI enables the server to carry out Python scripts and provide the results to the client, offering a quick and effective approach to creating dynamic online applications.</p> <p>Python CGI scripts may be used for many things, including creating dynamic web pages, processing forms, and interacting with databases. Since Python, a potent and popular programming language, can be utilized to create scripts, it enables a more customized and flexible approach to web creation. Scalable, safe, and maintainable online applications may be created with Python CGI. Python CGI is a handy tool for web developers building dynamic and interactive online applications.</p> <h2> Asynchronous Programming in Python </h2> <p> <strong>Asynchronous programming</strong> is a paradigm for computer programming that enables independent and concurrent operation of activities. It is frequently used in applications like web servers, database software, and network programming, where several tasks or requests must be handled concurrently.</p> <p>Python has asyncio, Twisted, and Tornado among its libraries and frameworks for asynchronous programming. Asyncio, one of these, offers a simple interface for asynchronous programming and is the official asynchronous programming library in Python.</p> <p>Coroutines are functions that may be halted and restarted at specific locations in the code and are utilized by asyncio. This enables numerous coroutines to operate simultaneously without interfering with one another. For constructing and maintaining coroutines, the library offers several classes and methods, including <strong>asyncio.gather(),</strong> <strong>asyncio.wait(),</strong> and <strong>asyncio.create_task().</strong> </p> <p>Event loops, which are in charge of planning and operating coroutines, are another feature of asyncio. By cycling between coroutines in a non-blocking way, the event loop controls the execution of coroutines and ensures that no coroutine blocks another. Additionally, it supports timers and scheduling callbacks, which may be helpful when activities must be completed at specified times or intervals.</p> <h2> Python Concurrency </h2> <p>The term &apos; <strong>concurrency</strong> &apos; describes a program&apos;s capacity to carry out several tasks at once, enhancing the program&apos;s efficiency. Python offers several modules and concurrency-related methods, including asynchronous programming, multiprocessing, and multithreading. While multiprocessing involves running many processes simultaneously on a system, multithreading involves running numerous threads concurrently inside a single process.</p> <p>The <strong>threading module</strong> in Python enables programmers to build multithreading. It offers classes and operations for establishing and controlling threads. Conversely, the multiprocessing module allows developers to design and control processes. Python&apos;s asyncio module provides asynchronous programming support, allowing developers to write non-blocking code that can handle multiple tasks concurrently. Using these techniques, developers can write highperformance, scalable programs that can handle multiple tasks concurrently.</p> <p>Python&apos;s threading module enables the concurrent execution of several threads within a single process, which is helpful for I/O-bound activities.</p> <p>For CPU-intensive operations like image processing or data analysis, multiprocessing modules make it possible to execute numerous processes concurrently across multiple CPU cores.</p> <p>The asyncio module supports asynchronous I/O and permits the creation of single-threaded concurrent code using coroutines for high-concurrency network applications.</p> <p>With libraries like Dask , <a href="/pyspark-tutorial">PySpark</a> , and MPI, Python may also be used for parallel computing. These libraries allow workloads to be distributed across numerous nodes or clusters for better performance.</p> <h2> Web Scrapping using Python </h2> <p>The process of web scraping is used to retrieve data from websites automatically. Various tools and libraries extract data from HTML and other online formats. Python is among the most widely used programming languages for web scraping because of its ease of use, adaptability, and variety of libraries.</p> <p>We must take a few steps to accomplish web scraping using Python. We must first decide which website to scrape and what information to gather. Then, we can submit a request to the website and receive the HTML content using Python&apos;s requests package. Once we have the HTML text, we can extract the needed data using a variety of parsing packages, like <strong>Beautiful Soup and lxml</strong> .</p> <p>We can employ several strategies, like slowing requests, employing user agents, and using proxies, to prevent overburdening the website&apos;s server. It is also crucial to abide by the terms of service for the website and respect its robots.txt file.</p> <p>Data mining, lead creation, pricing tracking, and many more uses are possible for web scraping. However, as unauthorized web scraping may be against the law and unethical, it is essential to utilize it professionally and ethically.</p> <h2>Natural Language Processing (NLP) using Python</h2> <p>A branch of artificial intelligence (AI) called &apos;natural language processing&apos; (NLP) studies how computers and human language interact. Thanks to NLP, computers can now understand, interpret, and produce human language. Due to its simplicity, versatility, and strong libraries like NLTK (Natural Language Toolkit) and spaCy, Python is a well-known programming language for NLP.</p> <p> <strong>For NLP tasks, including tokenization, stemming, lemmatization, part-of-speech tagging, named entity identification, sentiment analysis, and others, NLTK provides a complete library.</strong> It has a variety of corpora (big, organized text collections) for developing and evaluating NLP models. Another well-liked library for NLP tasks is spaCy , which offers quick and effective processing of enormous amounts of text. It enables simple modification and expansion and comes with pre-trained models for various NLP workloads.</p> <p>NLP may be used in Python for various practical purposes, including chatbots, sentiment analysis, text categorization, machine translation, and more. NLP is used, for instance, by chatbots to comprehend and reply to user inquiries in a natural language style. Sentiment analysis, which may be helpful for brand monitoring, customer feedback analysis, and other purposes, employs NLP to categorize text sentiment (positive, negative, or neutral). Text documents are categorized using natural language processing (NLP) into pre-established categories for spam detection, news categorization, and other purposes.</p> <p>Python is a strong and useful tool when analyzing and processing human language. Developers may carry out various NLP activities and create useful apps that can communicate with consumers in natural language with libraries like NLTK and spaCy.</p> <h2>Conclusion:</h2> <p>In this tutorial, we&apos;ve looked at some of Python&apos;s most important features and ideas, including variables, data types, loops, functions, modules, and more. More complex subjects, including web scraping, natural language processing, parallelism, and database connection, have also been discussed. You will have a strong basis to continue learning about Python and its applications using the information you have learned from this lesson.</p> <p>Remember that practicing and developing code is the best method to learn Python. You may find many resources at javaTpoint to support your further learning, including documentation, tutorials, online groups, and more. You can master Python and use it to create wonderful things if you work hard and persist.</p> <h2>Prerequisite</h2> <p>Before learning Python, you must have the basic knowledge of programming concepts.</p> <h2>Audience</h2> <p>Our Python tutorial is designed to help beginners and professionals.</p> <h2>Problem</h2> <p>We assure that you will not find any problem in this Python tutorial. But if there is any mistake, please post the problem in contact form.</p> <hr></=></pre></5:>

    У наведеному вище прикладі коду ми продемонстрували використання двох типів циклів у Python – циклу For і циклу While.

    Цикл For використовується для повторення послідовності елементів, таких як список, кортеж або рядок. У прикладі ми визначили список фруктів і використали цикл for для друку кожного фрукта, але його також можна використовувати для друку діапазону чисел.

    Цикл While повторює блок коду, якщо вказана умова виконується. У прикладі ми ініціалізували змінну i значенням 1 і використовували цикл while для друку значення i, доки воно не стане більшим або рівним 6. Оператор i += 1 використовується для збільшення значення i на кожній ітерації .

    Детально про них ми дізнаємося в уроці.

    Структури даних Python

    Python пропонує чотири вбудовані структури даних: списки , кортежі , набори , і словники які дозволяють нам ефективно зберігати дані. Нижче наведено типові структури даних у Python разом із прикладом коду:

    1. Списки

    • Списки є замовлені колекції елементів даних різних типів.
    • Списки є мінливий тобто список можна будь-коли змінити.
    • Елементи можуть бути доступ за допомогою індексів .
    • Вони визначаються за допомогою квадратних дужок ' [] '.

    приклад:

     # Create a list fruits = [&apos;apple&apos;, &apos;banana&apos;, &apos;cherry&apos;] print(&apos;fuirts[1] =&apos;, fruits[1]) # Modify list fruits.append(&apos;orange&apos;) print(&apos;fruits =&apos;, fruits) num_list = [1, 2, 3, 4, 5] # Calculate sum sum_nums = sum(num_list) print(&apos;sum_nums =&apos;, sum_nums) 

    Вихід:

     fuirts[1] = banana fruits = [&apos;apple&apos;, &apos;banana&apos;, &apos;cherry&apos;, &apos;orange&apos;] sum_nums = 15 

    2. Кортежі

    • Кортежі також є замовлені колекції елементів даних різних типів, подібно до списків.
    • Елементи можуть бути доступ за допомогою індексів .
    • Кортежі є незмінний тобто кортежі не можна змінювати після створення.
    • Вони визначаються за допомогою відкритих дужок ' () '.

    приклад:

     # Create a tuple point = (3, 4) x, y = point print(&apos;(x, y) =&apos;, x, y) # Create another tuple tuple_ = (&apos;apple&apos;, &apos;banana&apos;, &apos;cherry&apos;, &apos;orange&apos;) print(&apos;Tuple =&apos;, tuple_) 

    Вихід:

     (x, y) = 3 4 Tuple = (&apos;apple&apos;, &apos;banana&apos;, &apos;cherry&apos;, &apos;orange&apos;) 

    3. Набори

    • Набори є невпорядкований колекції незмінних елементів даних різних типів даних.
    • Набори є мінливий .
    • Не можна отримати доступ до елементів за допомогою індексів.
    • Набори не містять повторюваних елементів .
    • Вони визначаються за допомогою фігурних дужок ' {} '

    приклад:

     # Create a set set1 = {1, 2, 2, 1, 3, 4} print(&apos;set1 =&apos;, set1) # Create another set set2 = {&apos;apple&apos;, &apos;banana&apos;, &apos;cherry&apos;, &apos;apple&apos;, &apos;orange&apos;} print(&apos;set2 =&apos;, set2) 

    Вихід:

     set1 = {1, 2, 3, 4} set2 = {&apos;apple&apos;, &apos;cherry&apos;, &apos;orange&apos;, &apos;banana&apos;} 

    4. Словники

    • Словник є пари ключ-значення які дозволяють асоціювати значення з унікальними ключами.
    • Вони визначаються за допомогою фігурних дужок ' {} ' з парами ключ-значення розділених двокрапками ':' .
    • Словники є мінливий .
    • Доступ до елементів можна отримати за допомогою клавіш.

    приклад:

     # Create a dictionary person = {&apos;name&apos;: &apos;Umesh&apos;, &apos;age&apos;: 25, &apos;city&apos;: &apos;Noida&apos;} print(&apos;person =&apos;, person) print(person[&apos;name&apos;]) # Modify Dictionary person[&apos;age&apos;] = 27 print(&apos;person =&apos;, person) 

    Вихід:

     person = {&apos;name&apos;: &apos;Umesh&apos;, &apos;age&apos;: 25, &apos;city&apos;: &apos;Noida&apos;} Umesh person = {&apos;name&apos;: &apos;Umesh&apos;, &apos;age&apos;: 27, &apos;city&apos;: &apos;Noida&apos;} 

    Це лише кілька прикладів вбудованих структур даних Python. Кожна структура даних має свої особливості та випадки використання.

    Функціональне програмування Python

    У цьому розділі посібника з Python описано деякі важливі інструменти, пов’язані з функціональним програмуванням, наприклад лямбда-функції та рекурсивні функції. Ці функції дуже ефективні при виконанні складних завдань. Ми визначаємо кілька важливих функцій, таких як зменшення, відображення та фільтр. Python надає модуль functools, який включає різні інструменти функціонального програмування. Відвідайте наступний посібник, щоб дізнатися більше про функціональне програмування.

    Останні версії Python представили функції, які роблять функціональне програмування більш лаконічним і виразним. Наприклад, оператор «walrus»:= дозволяє призначати вбудовані змінні у виразах, що може бути корисним під час роботи з викликами вкладених функцій або розумінням списків.

    Функція Python

    1. Лямбда-функція - Лямбда-функція є малою, анонімна функція який може приймати будь-яку кількість аргументів, але може мати лише один вираз. Лямбда-функції часто використовуються у функціональному програмуванні для створення функцій «на льоту» без визначення іменованої функції.
    2. Рекурсивна функція - Рекурсивна функція – це функція, яка викликає сама себе для вирішення проблеми. Рекурсивні функції часто використовуються у функціональному програмуванні для виконання складних обчислень або проходження складних структур даних.
    3. Функція карти - Функція map() застосовує задану функцію до кожного елемента ітерації та повертає нову ітерацію з результатами. Ітерація введення може бути списком, кортежем або іншим.
    4. Функція фільтра - Функція filter() повертає ітератор із iterable, для якого функція, передана як перший аргумент, повертає True. Він відфільтровує елементи з ітерації, які не відповідають заданій умові.
    5. Зменшити функцію - Функція reduce() застосовує функцію з двох аргументів сукупно до елементів ітерованого зліва направо, щоб зменшити його до одного значення.
    6. Модуль functools - Модуль functools у Python забезпечує функції вищого порядку, які працюють з іншими функціями, такими як partial() і reduce().
    7. Функція карірування - Функція каррінга – це функція, яка приймає кілька аргументів і повертає послідовність функцій, кожна з яких приймає один аргумент.
    8. Функція запам'ятовування - Запам'ятовування - це техніка, яка використовується у функціональному програмуванні для кешування результатів дорогих викликів функцій і повернення кешованого результату, коли ті самі вхідні дані повторюються знову.
    9. Функція Threading - Потоковість — це техніка, яка використовується у функціональному програмуванні для одночасного виконання кількох завдань, щоб зробити код ефективнішим і швидшим.

    Модулі Python

    Модулі Python — це програмні файли, які містять код або функції Python. У Python є два типи модулів - модулі, визначені користувачем, і вбудовані модулі. Модуль, який визначає користувач, або наш код Python, збережений із розширенням .py, розглядається як модуль, який визначає користувач.

    Вбудовані модулі — це попередньо визначені модулі Python. Щоб використовувати функціональні можливості модулів, нам потрібно імпортувати їх у нашу поточну робочу програму.

    Модулі Python є важливими для екосистеми мови, оскільки вони пропонують багаторазовий код і функції, які можна імпортувати в будь-яку програму Python. Ось кілька прикладів кількох модулів Python разом із коротким описом кожного:

    математика : надає користувачам доступ до математичних констант, числа пі та тригонометричних функцій.

    Дата, час : надає класи для простішого способу маніпулювання датами, часом і періодами.

    ВИ : Вмикає взаємодію з базовою операційною системою, включаючи адміністрування процесів і дії файлової системи.

    випадковий : функція random пропонує інструменти для генерації випадкових цілих чисел і вибору випадкових елементів зі списку.

    JSON : JSON — це структура даних, яку можна кодувати та декодувати, і часто використовується в онлайн-інтерфейсах API та обміні даними. Цей модуль дозволяє працювати з JSON.
    Re : підтримує регулярні вирази, потужний інструмент для пошуку та обробки тексту.

    факториал java

    Колекції : надає альтернативні структури даних, такі як відсортовані словники, словники за замовчуванням та іменовані кортежі.

    NumPy : NumPy — це основний інструментарій для наукових обчислень, який підтримує числові операції з масивами та матрицями.

    панди : забезпечує високорівневі структури даних і операції для обробки часових рядів та інших структурованих типів даних.

    Запити : Пропонує простий інтерфейс користувача для веб-API і виконує запити HTTP.

    Файловий ввід-вивід Python

    Файли використовуються для зберігання даних на диску комп’ютера. У цьому посібнику ми пояснюємо вбудований файловий об’єкт Python. Ми можемо відкрити файл за допомогою сценарію Python і виконати різні операції, такі як запис, читання та додавання. Існують різні способи відкриття файлу. Пояснюємо на відповідному прикладі. Ми також навчимося виконувати операції читання/запису двійкових файлів.

    Система введення/виведення файлів (I/O) Python пропонує програми для спілкування з файлами, що зберігаються на диску. Вбудовані методи Python для об’єкта file дозволяють нам виконувати такі дії, як читання, запис і додавання даних до файлів.

    The ВІДЧИНЕНО() метод у Python створює файловий об’єкт під час роботи з файлами. Ім'я файлу, який потрібно відкрити, і режим, у якому файл буде відкрито, є двома параметрами, необхідними для цієї функції. Режим можна використовувати відповідно до роботи, яку потрібно виконати з файлом, наприклад ' r 'для читання', в ' для написання або ' a ' для прикріплення.

    Після успішного створення об’єкта можна використовувати різні методи відповідно до нашої роботи. Якщо ми хочемо писати у файл, ми можемо використовувати функції write(), а якщо ви хочете читати і писати обидва, тоді ми можемо використовувати функцію append(), а у випадках, коли ми хочемо лише прочитати вміст файл, у якому ми можемо використовувати функцію read(). З двійковими файлами, що містять дані у двійковому, а не текстовому форматі, також можна працювати за допомогою Python. Двійкові файли записуються таким чином, що люди не можуть безпосередньо зрозуміти. The рб і wb режими можуть читати та записувати двійкові дані у двійкові файли.

    Винятки Python

    Виняток можна визначити як незвичайний стан у програмі, що призводить до переривання потоку програми.

    Щоразу, коли виникає виняткова ситуація, програма припиняє виконання, і, отже, інший код не виконується. Таким чином, винятком є ​​помилки під час виконання, які не в змозі обробити сценарій Python. Винятком є ​​об’єкт Python, який представляє помилку.

    Винятки Python є важливим аспектом обробки помилок у програмуванні Python. Коли програма стикається з неочікуваною ситуацією або помилкою, вона може викликати виняткову ситуацію, яка може перервати нормальний хід програми.

    У Python винятки представлені як об’єкти, що містять інформацію про помилку, включаючи її тип і повідомлення. Найпоширенішим типом винятків у Python є клас Exception, базовий клас для всіх інших вбудованих винятків.

    Для обробки винятків у Python ми використовуємо спробувати і крім заяви. The спробувати оператор використовується для включення коду, який може викликати виняток, тоді як крім Інструкція використовується для визначення блоку коду, який слід виконати, коли виникає виняткова ситуація.

    Наприклад, розглянемо такий код:

     try: x = int ( input (&apos;Enter a number: &apos;)) y = 10 / x print (&apos;Result:&apos;, y) except ZeroDivisionError: print (&apos;Error: Division by zero&apos;) except ValueError: print (&apos;Error: Invalid input&apos;) 

    Вихід:

     Enter a number: 0 Error: Division by zero 

    У цьому коді ми використовуємо оператор try, щоб спробувати виконати операцію ділення. Якщо будь-яка з цих операцій викликає виняткову ситуацію, виконується відповідний блок за винятком.

    Python також надає багато вбудованих винятків, які можна викликати в подібних ситуаціях. Деякі поширені вбудовані винятки включають IndexError, TypeError , і NameError . Крім того, ми можемо визначити власні винятки, створивши новий клас, який успадковує клас Exception.

    Python CSV

    CSV означає «значення, розділені комами», що визначається як простий формат файлу, який використовує певну структуру для впорядкування табличних даних. Він зберігає табличні дані, такі як електронні таблиці або бази даних, у вигляді звичайного тексту та має загальний формат для обміну даними. Файл CSV відкривається на аркуші Excel, а дані рядків і стовпців визначають стандартний формат.

    Ми можемо використовувати функцію CSV.reader для читання файлу CSV. Ця функція повертає об’єкт читання, який ми можемо використовувати для повторення над рядками у файлі CSV. Кожен рядок повертається як список значень, де кожне значення відповідає стовпцю у файлі CSV.

    Наприклад, розглянемо такий код:

     import csv with open(&apos;data.csv&apos;, &apos;r&apos;) as file: reader = csv.reader(file) for row in reader: print(row) 

    Тут ми відкриваємо файл data.csv у режимі читання та створюємо csv.reader об'єкт за допомогою csv.reader() функція. Потім ми переглядаємо рядки у файлі CSV за допомогою циклу for і друкуємо кожен рядок на консолі.

    Ми можемо використовувати CSV.writer() функція для запису даних у файл CSV. Він повертає об’єкт запису, який ми можемо використовувати для запису рядків у файл CSV. Ми можемо писати рядки, викликаючи письменник () метод на об’єкт запису.

    Наприклад, розглянемо такий код:

     import csv data = [ [&apos;Name&apos;, &apos;Age&apos;, &apos;Country&apos;], [&apos;Alice&apos;, &apos;25&apos;, &apos;USA&apos;], [&apos;Bob&apos;, &apos;30&apos;, &apos;Canada&apos;], [&apos;Charlie&apos;, &apos;35&apos;, &apos;Australia&apos;] ] with open(&apos;data.csv&apos;, &apos;w&apos;) as file: writer = csv.writer(file) for row in data: writer.writerow(row) 

    У цій програмі ми створюємо список списків, які називаються даними, де кожен внутрішній список представляє рядок даних. Потім ми відкриваємо файл data.csv у режимі запису та створюємо CSV.writer за допомогою функції CSV.writer. Потім ми переглядаємо рядки даних за допомогою циклу for і записуємо кожен рядок у файл CSV за допомогою методу запису.

    Надсилання пошти Python

    Ми можемо надсилати або читати листи за допомогою сценарію Python. Модулі стандартної бібліотеки Python корисні для роботи з різними протоколами, такими як PoP3 та IMAP. Python надає smtplib модуль для надсилання електронних листів за допомогою SMTP (Simple Mail Transfer Protocol). Ми навчимося надсилати листи за допомогою популярного електронного сервісу SMTP за допомогою сценарію Python.

    Магічні методи Python

    Чарівний метод Python — це спеціальний метод, який додає «магію» до класу. Він починається і закінчується подвійним підкресленням, наприклад, _гарячий_ або _str_ .

    Вбудовані класи визначають багато магічних методів. The ви() Функція може бути використана для перегляду кількості магічних методів, успадкованих класом. Він має два префікси та суфікс підкреслення в назві методу.

    • Магічні методи Python також відомі як методи дундера , скорочення від методів «подвійного підкреслення», оскільки їхні назви починаються та закінчуються подвійним підкресленням.
    • Магічні методи автоматично викликаються інтерпретатором Python у певних ситуаціях, наприклад, коли об’єкт створюється, порівнюється з іншим об’єктом або друкується.
    • Чарівні методи можна використовувати для налаштування поведінки класів, наприклад визначення способу порівняння об’єктів, перетворення їх на рядки або доступу до них як контейнерів.
    • Деякі широко використовувані магічні методи включають тепло для ініціалізації об'єкта, str для перетворення об'єкта в рядок, екв для порівняння двох об’єктів на рівність, і під назвою і setitem для доступу до елементів в об’єкті контейнера.

    Наприклад, вул магічний метод може визначити, як об'єкт має бути представлений у вигляді рядка. Ось приклад

     class Person: def __init__(self, name, age): self.name = name self.age = age def __str__(self): return f&apos;{self.name} ({self.age})&apos; person = Person(&apos;Vikas&apos;, 22) print(person) 

    Вихід:

     Vikas (22) 

    У цьому прикладі метод str визначено для повернення відформатованого рядкового представлення об’єкта Person з іменем і віком людини.

    Ще один часто використовуваний магічний метод екв , який визначає, як порівнювати об’єкти на рівність. Ось приклад:

     class Point: def __init__(self, x, y): self.x = x self.y = y def __eq__(self, other): return self.x == other.x and self.y == other.y point1 = Point(2, 3) point2 = Point(3, 4) point3 = Point(2, 3) print(point1 == point2) print(point1 == point3) 

    Вихід:

     False True 

    У цьому прикладі екв визначено, що метод повертає True, якщо два об’єкти Point мають однакові координати x і y, і False в іншому випадку.

    Концепції Python Oops

    Усе в Python розглядається як об’єкт, включаючи цілі числа, числа з плаваючою точкою, функції, класи та нічого. Крім того, Python підтримує всі орієнтовані концепції. Нижче наведено короткий вступ до концепцій Oops у Python.

    • Класи та об'єкти - Класи Python є схемою об'єкта. Об’єкт — це сукупність даних і методів, які діють на дані.
    • Спадщина - Спадкування - це техніка, коли один клас успадковує властивості інших класів.
    • Конструктор - Python надає спеціальний метод __init__(), який відомий як конструктор. Цей метод автоматично викликається під час створення екземпляра об’єкта.
    • Член даних- Змінна, яка містить дані, пов’язані з класом та його об’єктами.
    • Поліморфізм - Поліморфізм - це концепція, коли об'єкт може приймати різні форми. У Python поліморфізм може бути досягнутий шляхом перевантаження та перевизначення методів.
    • Перевантаження методу- У Python перевантаження методів досягається за допомогою аргументів за замовчуванням, де метод можна визначити за допомогою кількох параметрів. Значення за замовчуванням використовуються, якщо деякі параметри не передаються під час виклику методу.
    • Перевизначення методу - Перевизначення методу - це концепція, де підклас реалізує метод, уже визначений у його суперкласі.
    • Інкапсуляція - Інкапсуляція - це упаковка даних і методів в єдиний блок. У Python інкапсуляція досягається за допомогою модифікаторів доступу, таких як public, private і protected. Однак Python не вимагає суворого дотримання модифікаторів доступу, а домовленість про іменування вказує на рівень доступу.
    • Абстракція даних : Техніка для приховування складності даних і показу лише основних функцій користувачеві. Він забезпечує інтерфейс для взаємодії з даними. Абстракція даних зменшує складність і робить код більш модульним, дозволяючи розробникам зосередитися на основних функціях програми.

    Щоб детально прочитати концепцію Oops, відвідайте наведені нижче ресурси.

    • Python Oops Concepts - У Python об'єктно-орієнтована парадигма полягає в розробці програми за допомогою класів і об'єктів. Об’єкт пов’язаний із реальними сутностями, такими як книга, будинок, олівець тощо, а клас визначає його властивості та поведінку.
    • Об’єкти та класи Python - У Python об’єкти є екземплярами класів, а класи – це схеми, які визначають структуру та поведінку даних.
    • Конструктор Python - Конструктор - це спеціальний метод у класі, який використовується для ініціалізації атрибутів об'єкта під час створення об'єкта.
    • Спадкування Python - Спадкування - це механізм, за якого новий клас (підклас або дочірній клас) успадковує властивості та поведінку існуючого класу (суперкласу або батьківського класу).
    • Поліморфізм Python — поліморфізм дозволяє розглядати об’єкти різних класів як об’єкти спільного суперкласу, що дозволяє взаємозамінно використовувати різні класи через загальний інтерфейс.

    Розширені теми Python

    Python містить багато вдосконалень і корисних концепцій, які допомагають програмісту вирішувати складні завдання. Ці поняття наведені нижче.

    Ітератор Python

    Ітератор - це просто об'єкт, який можна ітерувати. Він повертає один об’єкт за раз. Це можна реалізувати за допомогою двох спеціальних методів, __iter__() і __наступний__().

    Ітератори в Python — це об’єкти, які дозволяють ітерацію по колекції даних. Вони обробляють кожен елемент колекції окремо, не завантажуючи всю колекцію в пам'ять.

    Наприклад, давайте створимо ітератор, який повертає квадрати чисел до заданої межі:

     def __init__(self, limit): self.limit = limit self.n = 0 def __iter__(self): return self def __next__(self): if self.n <= 2 self.limit: square="self.n" ** self.n +="1" return else: raise stopiteration numbers="Squares(5)" for n in numbers: print(n) < pre> <p> <strong>Output:</strong> </p> <pre> 0 1 4 9 16 25 </pre> <p>In this example, we have created a class Squares that acts as an iterator by implementing the __iter__() and __next__() methods. The __iter__() method returns the Object itself, and the __next__() method returns the next square of the number until the limit is reached.</p> <p>To learn more about the iterators, visit our Python Iterators tutorial.</p> <h3> Python Generators </h3> <p>  <strong>Python generators</strong>  produce a sequence of values <strong>using a yield statement</strong> rather than a return since they are functions that return iterators. Generators terminate the function&apos;s execution while keeping the local state. It picks up right where it left off when it is restarted. Because we don&apos;t have to implement the iterator protocol thanks to this feature, writing iterators is made simpler. Here is an illustration of a straightforward generator function that produces squares of numbers:</p> <pre> # Generator Function def square_numbers(n): for i in range(n): yield i**2 # Create a generator object generator = square_numbers(5) # Print the values generated by the generator for num in generator: print(num) </pre> <p> <strong>Output:</strong> </p> <pre> 0 1 4 9 16 </pre> <h2>Python Modifiers</h2> <p>  <strong>Python Decorators</strong>  are functions used to modify the behaviour of another function. They allow adding functionality to an existing function without modifying its code directly. Decorators are defined using the <strong>@</strong> symbol followed by the name of the decorator function. They can be used for logging, timing, caching, etc.</p> <p>Here&apos;s an example of a decorator function that adds timing functionality to another function:</p> <pre> import time from math import factorial # Decorator to calculate time taken by # the function def time_it(func): def wrapper(*args, **kwargs): start = time.time() result = func(*args, **kwargs) end = time.time() print(f&apos;{func.__name__} took {end-start:.5f} seconds to run.&apos;) return result return wrapper @time_it def my_function(n): time.sleep(2) print(f&apos;Factorial of {n} = {factorial(n)}&apos;) my_function(25) </pre> <p> <strong>Output:</strong> </p> <pre> </pre> <p>In the above example, the time_it decorator function takes another function as an argument and returns a wrapper function. The wrapper function calculates the time to execute the original function and prints it to the console. The @time_it decorator is used to apply the time_it function to the my_function function. When my_function is called, the decorator is executed, and the timing functionality is added.</p> <h2>Python MySQL</h2> <p>Python MySQL is a powerful relational database management system. We must set up the environment and establish a connection to use MySQL with Python. We can create a new database and tables using SQL commands in Python.</p> <ul> <li>  <strong>Environment Setup</strong>  : Installing and configuring MySQL Connector/Python to use Python with MySQL.</li> <li>  <strong>Database Connection</strong>  : Establishing a connection between Python and MySQL database using MySQL Connector/Python.</li> <li>  <strong>Creating New Database</strong>  : Creating a new database in MySQL using Python.</li> <li>  <strong>Creating Tables</strong>  : Creating tables in the MySQL database with Python using SQL commands.</li> <li>  <strong>Insert Operation</strong>  : Insert data into MySQL tables using Python and SQL commands.</li> <li>  <strong>Read Operation</strong>  : Reading data from MySQL tables using Python and SQL commands.</li> <li>  <strong>Update Operation</strong>  : Updating data in MySQL tables using Python and SQL commands.</li> <li>  <strong>Join Operation</strong>  : Joining two or more tables in MySQL using Python and SQL commands.</li> <li>  <strong>Performing Transactions</strong>  : Performing a group of SQL queries as a single unit of work in MySQL using Python.</li> </ul> <p>Other relative points include handling errors, creating indexes, and using stored procedures and functions in MySQL with Python.</p> <h2>Python MongoDB</h2> <p> Python MongoDB is a popular NoSQL database that stores data in JSON-like documents. It is schemaless and provides high scalability and flexibility for data storage. We can use MongoDB with Python using the PyMongo library, which provides a simple and intuitive interface for interacting with MongoDB.</p> <p>Here are some common tasks when working with MongoDB in Python:</p> <ol class="points"> <li>  <strong>Environment Setup</strong>  : Install and configure MongoDB and PyMongo library on your system.</li> <li>  <strong>Database Connection</strong>  : Connect to a MongoDB server using the MongoClient class from PyMongo.</li> <li>  <strong>Creating a new database</strong>  : Use the MongoClient Object to create a new database.</li> <li>  <strong>Creating collections</strong>  : Create collections within a database to store documents.</li> <li>  <strong>Inserting documents</strong>  : Insert new documents into a collection using the insert_one() or insert_many() methods.</li> <li>  <strong>Querying documents</strong>  : Retrieve documents from a collection using various query methods like find_one(), find(), etc.</li> <li>  <strong>Updating documents</strong>  : Modify existing documents in a collection using update_one() or update_many() methods.</li> <li>  <strong>Deleting documents</strong>  : Remove documents from a collection using the delete_one() or delete_many() methods.</li> <li>  <strong>Aggregation</strong>  : Perform aggregation operations like grouping, counting, etc., using the aggregation pipeline framework.</li> <tr><td>Indexing:</td> Improve query performance by creating indexes on fields in collections. </tr></ol> <p>There are many more advanced topics in MongoDB, such as data sharding, replication, and more, but these tasks cover the basics of working with MongoDB in Python.</p> <h2> Python SQLite </h2> <p>Relational databases are built and maintained using Python SQLite, a compact, serverless, self-contained database engine. Its mobility and simplicity make it a popular option for local or small-scale applications. Python has a built-in module for connecting to SQLite databases called SQLite3, enabling developers to work with SQLite databases without difficulties.</p> <p>Various API methods are available through the SQLite3 library that may be used to run SQL queries, insert , select , update , and remove data, as well as get data from tables. Additionally, it allows transactions, allowing programmers to undo changes in case of a problem. Python SQLite is a fantastic option for creating programs that need an embedded database system, including desktop, mobile, and modest-sized web programs. SQLite has become popular among developers for lightweight apps with database functionality thanks to its ease of use, portability, and smooth connection with Python.</p> <h2> Python CGI </h2> <p>  <strong>Python CGI</strong>  is a technology for running scripts through web servers to produce dynamic online content. It offers a communication channel and a dynamic content generation interface for external CGI scripts and the web server. Python CGI scripts may create HTML web pages, handle form input, and communicate with databases. Python CGI enables the server to carry out Python scripts and provide the results to the client, offering a quick and effective approach to creating dynamic online applications.</p> <p>Python CGI scripts may be used for many things, including creating dynamic web pages, processing forms, and interacting with databases. Since Python, a potent and popular programming language, can be utilized to create scripts, it enables a more customized and flexible approach to web creation. Scalable, safe, and maintainable online applications may be created with Python CGI. Python CGI is a handy tool for web developers building dynamic and interactive online applications.</p> <h2> Asynchronous Programming in Python </h2> <p> <strong>Asynchronous programming</strong> is a paradigm for computer programming that enables independent and concurrent operation of activities. It is frequently used in applications like web servers, database software, and network programming, where several tasks or requests must be handled concurrently.</p> <p>Python has asyncio, Twisted, and Tornado among its libraries and frameworks for asynchronous programming. Asyncio, one of these, offers a simple interface for asynchronous programming and is the official asynchronous programming library in Python.</p> <p>Coroutines are functions that may be halted and restarted at specific locations in the code and are utilized by asyncio. This enables numerous coroutines to operate simultaneously without interfering with one another. For constructing and maintaining coroutines, the library offers several classes and methods, including <strong>asyncio.gather(),</strong> <strong>asyncio.wait(),</strong> and <strong>asyncio.create_task().</strong> </p> <p>Event loops, which are in charge of planning and operating coroutines, are another feature of asyncio. By cycling between coroutines in a non-blocking way, the event loop controls the execution of coroutines and ensures that no coroutine blocks another. Additionally, it supports timers and scheduling callbacks, which may be helpful when activities must be completed at specified times or intervals.</p> <h2> Python Concurrency </h2> <p>The term &apos; <strong>concurrency</strong> &apos; describes a program&apos;s capacity to carry out several tasks at once, enhancing the program&apos;s efficiency. Python offers several modules and concurrency-related methods, including asynchronous programming, multiprocessing, and multithreading. While multiprocessing involves running many processes simultaneously on a system, multithreading involves running numerous threads concurrently inside a single process.</p> <p>The <strong>threading module</strong> in Python enables programmers to build multithreading. It offers classes and operations for establishing and controlling threads. Conversely, the multiprocessing module allows developers to design and control processes. Python&apos;s asyncio module provides asynchronous programming support, allowing developers to write non-blocking code that can handle multiple tasks concurrently. Using these techniques, developers can write highperformance, scalable programs that can handle multiple tasks concurrently.</p> <p>Python&apos;s threading module enables the concurrent execution of several threads within a single process, which is helpful for I/O-bound activities.</p> <p>For CPU-intensive operations like image processing or data analysis, multiprocessing modules make it possible to execute numerous processes concurrently across multiple CPU cores.</p> <p>The asyncio module supports asynchronous I/O and permits the creation of single-threaded concurrent code using coroutines for high-concurrency network applications.</p> <p>With libraries like Dask , <a href="/pyspark-tutorial">PySpark</a> , and MPI, Python may also be used for parallel computing. These libraries allow workloads to be distributed across numerous nodes or clusters for better performance.</p> <h2> Web Scrapping using Python </h2> <p>The process of web scraping is used to retrieve data from websites automatically. Various tools and libraries extract data from HTML and other online formats. Python is among the most widely used programming languages for web scraping because of its ease of use, adaptability, and variety of libraries.</p> <p>We must take a few steps to accomplish web scraping using Python. We must first decide which website to scrape and what information to gather. Then, we can submit a request to the website and receive the HTML content using Python&apos;s requests package. Once we have the HTML text, we can extract the needed data using a variety of parsing packages, like <strong>Beautiful Soup and lxml</strong> .</p> <p>We can employ several strategies, like slowing requests, employing user agents, and using proxies, to prevent overburdening the website&apos;s server. It is also crucial to abide by the terms of service for the website and respect its robots.txt file.</p> <p>Data mining, lead creation, pricing tracking, and many more uses are possible for web scraping. However, as unauthorized web scraping may be against the law and unethical, it is essential to utilize it professionally and ethically.</p> <h2>Natural Language Processing (NLP) using Python</h2> <p>A branch of artificial intelligence (AI) called &apos;natural language processing&apos; (NLP) studies how computers and human language interact. Thanks to NLP, computers can now understand, interpret, and produce human language. Due to its simplicity, versatility, and strong libraries like NLTK (Natural Language Toolkit) and spaCy, Python is a well-known programming language for NLP.</p> <p> <strong>For NLP tasks, including tokenization, stemming, lemmatization, part-of-speech tagging, named entity identification, sentiment analysis, and others, NLTK provides a complete library.</strong> It has a variety of corpora (big, organized text collections) for developing and evaluating NLP models. Another well-liked library for NLP tasks is spaCy , which offers quick and effective processing of enormous amounts of text. It enables simple modification and expansion and comes with pre-trained models for various NLP workloads.</p> <p>NLP may be used in Python for various practical purposes, including chatbots, sentiment analysis, text categorization, machine translation, and more. NLP is used, for instance, by chatbots to comprehend and reply to user inquiries in a natural language style. Sentiment analysis, which may be helpful for brand monitoring, customer feedback analysis, and other purposes, employs NLP to categorize text sentiment (positive, negative, or neutral). Text documents are categorized using natural language processing (NLP) into pre-established categories for spam detection, news categorization, and other purposes.</p> <p>Python is a strong and useful tool when analyzing and processing human language. Developers may carry out various NLP activities and create useful apps that can communicate with consumers in natural language with libraries like NLTK and spaCy.</p> <h2>Conclusion:</h2> <p>In this tutorial, we&apos;ve looked at some of Python&apos;s most important features and ideas, including variables, data types, loops, functions, modules, and more. More complex subjects, including web scraping, natural language processing, parallelism, and database connection, have also been discussed. You will have a strong basis to continue learning about Python and its applications using the information you have learned from this lesson.</p> <p>Remember that practicing and developing code is the best method to learn Python. You may find many resources at javaTpoint to support your further learning, including documentation, tutorials, online groups, and more. You can master Python and use it to create wonderful things if you work hard and persist.</p> <h2>Prerequisite</h2> <p>Before learning Python, you must have the basic knowledge of programming concepts.</p> <h2>Audience</h2> <p>Our Python tutorial is designed to help beginners and professionals.</p> <h2>Problem</h2> <p>We assure that you will not find any problem in this Python tutorial. But if there is any mistake, please post the problem in contact form.</p> <hr></=>

    У цьому прикладі ми створили клас Squares, який діє як ітератор, реалізувавши методи __iter__() і __next__(). Метод __iter__() повертає сам об’єкт, а метод __next__() повертає наступний квадрат числа, доки не буде досягнуто обмеження.

    Щоб дізнатися більше про ітератори, відвідайте наш посібник з ітераторів Python.

    Генератори Python

    Генератори Python створити послідовність значень використовуючи оператор yield а не повернення, оскільки це функції, які повертають ітератори. Генератори припиняють виконання функції, зберігаючи локальний стан. Після перезапуску він продовжується з того місця, де зупинився. Оскільки нам не потрібно реалізовувати протокол ітератора завдяки цій функції, написання ітераторів стає простішим. Ось ілюстрація простої функції генератора, яка створює квадрати чисел:

     # Generator Function def square_numbers(n): for i in range(n): yield i**2 # Create a generator object generator = square_numbers(5) # Print the values generated by the generator for num in generator: print(num) 

    Вихід:

     0 1 4 9 16 

    Модифікатори Python

    Декоратори Python це функції, які використовуються для зміни поведінки іншої функції. Вони дозволяють додавати функціональність до існуючої функції без безпосередньої зміни її коду. Декоратори визначаються за допомогою @ символ, за яким слідує назва функції декоратора. Їх можна використовувати для журналювання, синхронізації, кешування тощо.

    Ось приклад функції декоратора, яка додає функцію синхронізації до іншої функції:

     import time from math import factorial # Decorator to calculate time taken by # the function def time_it(func): def wrapper(*args, **kwargs): start = time.time() result = func(*args, **kwargs) end = time.time() print(f&apos;{func.__name__} took {end-start:.5f} seconds to run.&apos;) return result return wrapper @time_it def my_function(n): time.sleep(2) print(f&apos;Factorial of {n} = {factorial(n)}&apos;) my_function(25) 

    Вихід:

     

    У наведеному вище прикладі функція-декоратор time_it приймає іншу функцію як аргумент і повертає функцію-огортку. Функція обгортки обчислює час для виконання оригінальної функції та друкує його на консолі. Декоратор @time_it використовується для застосування функції time_it до функції my_function. Під час виклику my_function виконується декоратор і додається функція синхронізації.

    Python MySQL

    Python MySQL — потужна система керування реляційними базами даних. Ми повинні налаштувати середовище та встановити з’єднання для використання MySQL із Python. Ми можемо створити нову базу даних і таблиці за допомогою команд SQL у Python.

    • Налаштування середовища : встановлення та налаштування MySQL Connector/Python для використання Python із MySQL.
    • Підключення до бази даних : Встановлення з’єднання між Python і базою даних MySQL за допомогою MySQL Connector/Python.
    • Створення нової бази даних : Створення нової бази даних у MySQL за допомогою Python.
    • Створення таблиць : Створення таблиць у базі даних MySQL за допомогою Python за допомогою команд SQL.
    • Операція вставки : вставте дані в таблиці MySQL за допомогою команд Python і SQL.
    • Прочитайте операцію : Читання даних із таблиць MySQL за допомогою команд Python і SQL.
    • Операція оновлення : Оновлення даних у таблицях MySQL за допомогою команд Python і SQL.
    • Приєднатися до операції : Об’єднання двох або більше таблиць у MySQL за допомогою команд Python і SQL.
    • Виконання транзакцій : Виконання групи SQL-запитів як єдиної одиниці роботи в MySQL за допомогою Python.

    Інші відносні моменти включають обробку помилок, створення індексів і використання збережених процедур і функцій у MySQL з Python.

    Python MongoDB

    Python MongoDB — це популярна база даних NoSQL, яка зберігає дані в JSON-подібних документах. Він безсхемний і забезпечує високу масштабованість і гнучкість для зберігання даних. Ми можемо використовувати MongoDB з Python за допомогою бібліотеки PyMongo, яка забезпечує простий та інтуїтивно зрозумілий інтерфейс для взаємодії з MongoDB.

    Ось деякі типові завдання під час роботи з MongoDB у Python:

    1. Налаштування середовища : установіть і налаштуйте бібліотеку MongoDB і PyMongo у вашій системі.
    2. Підключення до бази даних : Підключіться до сервера MongoDB за допомогою класу MongoClient із PyMongo.
    3. Створення нової бази даних : Використовуйте об’єкт MongoClient для створення нової бази даних.
    4. Створення колекцій : створюйте колекції в базі даних для зберігання документів.
    5. Вставлення документів : вставте нові документи в колекцію за допомогою методів insert_one() або insert_many().
    6. Запит документів : отримати документи з колекції за допомогою різних методів запиту, таких як find_one(), find() тощо.
    7. Оновлення документів : Змініть існуючі документи в колекції за допомогою методів update_one() або update_many().
    8. Видалення документів : Видаляйте документи з колекції за допомогою методів delete_one() або delete_many().
    9. Агрегація : Виконуйте операції агрегації, такі як групування, підрахунок тощо, використовуючи структуру конвеєра агрегації.
    10. Індексація:Покращуйте продуктивність запитів, створюючи індекси для полів у колекціях.

    У MongoDB є багато більш складних тем, як-от шардинг даних, реплікація тощо, але ці завдання охоплюють основи роботи з MongoDB у Python.

    Python SQLite

    Реляційні бази даних створюються та обслуговуються за допомогою Python SQLite, компактного автономного механізму баз даних без серверів. Його мобільність і простота роблять його популярним варіантом для локальних або невеликих застосувань. Python має вбудований модуль для підключення до баз даних SQLite під назвою SQLite3, що дозволяє розробникам без проблем працювати з базами даних SQLite.

    Через бібліотеку SQLite3 доступні різні методи API, які можна використовувати для виконання запитів SQL, вставки, вибору, оновлення та видалення даних, а також отримання даних із таблиць. Крім того, він дозволяє здійснювати транзакції, дозволяючи програмістам скасувати зміни в разі виникнення проблеми. Python SQLite — це фантастичний варіант для створення програм, які потребують вбудованої системи баз даних, включаючи настільні, мобільні та веб-програми невеликого розміру. SQLite став популярним серед розробників легких програм із функціональними можливостями баз даних завдяки простоті використання, портативності та плавному з’єднанню з Python.

    Python CGI

    Python CGI це технологія для запуску сценаріїв через веб-сервери для створення динамічного онлайн-контенту. Він пропонує канал зв’язку та інтерфейс генерації динамічного вмісту для зовнішніх сценаріїв CGI та веб-сервера. CGI-скрипти Python можуть створювати веб-сторінки HTML, обробляти введення форм і спілкуватися з базами даних. Python CGI дозволяє серверу виконувати сценарії Python і надавати результати клієнту, пропонуючи швидкий і ефективний підхід до створення динамічних онлайн-додатків.

    CGI-скрипти Python можна використовувати для багатьох речей, зокрема для створення динамічних веб-сторінок, обробки форм і взаємодії з базами даних. Оскільки Python, потужну та популярну мову програмування, можна використовувати для створення сценаріїв, це забезпечує більш індивідуальний і гнучкий підхід до веб-створення. За допомогою Python CGI можна створювати масштабовані, безпечні та придатні для обслуговування онлайн-програми. Python CGI — це зручний інструмент для веб-розробників, які створюють динамічні та інтерактивні онлайн-додатки.

    Асинхронне програмування на Python

    Асинхронне програмування це парадигма для комп’ютерного програмування, яка забезпечує незалежну та одночасну роботу. Він часто використовується в програмах, таких як веб-сервери, програмне забезпечення для баз даних і мережеве програмування, де кілька завдань або запитів повинні оброблятися одночасно.

    Python має asyncio, Twisted і Tornado серед своїх бібліотек і фреймворків для асинхронного програмування. Asyncio, одна з них, пропонує простий інтерфейс для асинхронного програмування та є офіційною бібліотекою асинхронного програмування на Python.

    Співпрограми — це функції, які можна зупиняти та перезапускати в певних місцях коду, і які використовуються asyncio. Це дозволяє численним співпрограмам працювати одночасно, не заважаючи одна одній. Для побудови і підтримки співпрограм бібліотека пропонує кілька класів і методів, в т.ч asyncio.gather(), asyncio.wait(), і asyncio.create_task().

    Цикли подій, які відповідають за планування та роботу співпрограм, є ще однією особливістю asyncio. Переходячи між співпрограмами без блокування, цикл подій контролює виконання співпрограм і гарантує, що жодна співпрограма не блокує іншу. Крім того, він підтримує таймери та планування зворотних викликів, що може бути корисним, коли дії мають бути завершені у визначений час або інтервали.

    Python Concurrency

    Термін ' одночасність ' описує здатність програми виконувати декілька завдань одночасно, підвищуючи ефективність програми. Python пропонує декілька модулів і методів, пов’язаних із паралелізмом, зокрема асинхронне програмування, багатопроцесорність і багатопотоковість. У той час як багатопроцесорність передбачає запуск багатьох процесів одночасно в системі, багатопотоковість передбачає запуск багатьох потоків одночасно всередині одного процесу.

    The різьбовий модуль у Python дозволяє програмістам будувати багатопотоковість. Він пропонує класи та операції для встановлення та керування потоками. І навпаки, багатопроцесорний модуль дозволяє розробникам проектувати та контролювати процеси. Модуль asyncio Python забезпечує підтримку асинхронного програмування, дозволяючи розробникам писати неблокуючий код, який може обробляти кілька завдань одночасно. Використовуючи ці методи, розробники можуть писати високопродуктивні, масштабовані програми, які можуть обробляти кілька завдань одночасно.

    Модуль потоків Python забезпечує одночасне виконання кількох потоків в одному процесі, що корисно для дій, пов’язаних із введенням/виведенням.

    Для операцій із інтенсивним використанням ЦП, таких як обробка зображень або аналіз даних, багатопроцесорні модулі дають змогу виконувати численні процеси одночасно на кількох ядрах ЦП.

    Модуль asyncio підтримує асинхронний ввід-вивід і дозволяє створювати однопотоковий паралельний код за допомогою співпрограм для мережевих додатків з високим рівнем паралелізму.

    З такими бібліотеками, як Dask, PySpark , і MPI, Python також можна використовувати для паралельних обчислень. Ці бібліотеки дозволяють розподіляти навантаження між численними вузлами або кластерами для кращої продуктивності.

    Веб-скрапінг за допомогою Python

    Процес веб-збирання використовується для автоматичного отримання даних із веб-сайтів. Різні інструменти та бібліотеки витягують дані з HTML та інших онлайн-форматів. Python є однією з найпоширеніших мов програмування для веб-скрапінгу через її простоту використання, адаптивність і різноманітність бібліотек.

    Ми повинні зробити кілька кроків, щоб виконати веб-скрапінг за допомогою Python. Спершу ми повинні вирішити, який веб-сайт збирати та яку інформацію збирати. Потім ми можемо надіслати запит на веб-сайт і отримати вміст HTML за допомогою пакета запитів Python. Отримавши HTML-текст, ми можемо отримати необхідні дані за допомогою різноманітних пакетів парсингу, наприклад Прекрасний суп і lxml .

    Ми можемо застосувати кілька стратегій, як-от уповільнення запитів, використання агентів користувачів і використання проксі-серверів, щоб запобігти перевантаженню сервера веб-сайту. Також важливо дотримуватися умов обслуговування веб-сайту та поважати його файл robots.txt.

    Інтелектуальний аналіз даних, створення потенційних клієнтів, відстеження цін і багато іншого можна використати для веб-скопіювання. Однак, оскільки несанкціоноване копіювання веб-сайтів може бути протизаконним і неетичним, дуже важливо використовувати його професійно та етично.

    Обробка природної мови (NLP) за допомогою Python

    Розділ штучного інтелекту (AI), який називається «обробка природної мови» (NLP), вивчає, як взаємодіють комп’ютери та людська мова. Завдяки НЛП комп’ютери тепер можуть розуміти, інтерпретувати та створювати людську мову. Завдяки своїй простоті, універсальності та потужним бібліотекам, таким як NLTK (Natural Language Toolkit) і spaCy, Python є добре відомою мовою програмування для NLP.

    Для завдань NLP, включаючи токенізацію, стемінування, лемматизацію, тегування частин мови, ідентифікацію іменованих об’єктів, аналіз настроїв та інші, NLTK надає повну бібліотеку. Він має різноманітні корпуси (великі організовані колекції текстів) для розробки та оцінки моделей НЛП. Ще однією популярною бібліотекою для завдань НЛП є spaCy, яка пропонує швидку та ефективну обробку величезних обсягів тексту. Він дає змогу легко модифікувати та розширювати та поставляється з попередньо підготовленими моделями для різних робочих навантажень НЛП.

    NLP можна використовувати в Python для різних практичних цілей, включаючи чат-ботів, аналіз настроїв, категоризацію тексту, машинний переклад тощо. NLP використовується, наприклад, чат-ботами для розуміння запитів користувачів і відповідей на них у стилі природної мови. Аналіз настрою, який може бути корисним для моніторингу бренду, аналізу відгуків клієнтів та інших цілей, використовує НЛП для класифікації настрою тексту (позитивний, негативний або нейтральний). Текстові документи класифікуються за допомогою обробки природної мови (NLP) у попередньо встановлені категорії для виявлення спаму, категоризації новин та інших цілей.

    Python є потужним і корисним інструментом для аналізу та обробки людської мови. Розробники можуть виконувати різноманітні заходи NLP і створювати корисні програми, які можуть спілкуватися зі споживачами природною мовою за допомогою таких бібліотек, як NLTK і spaCy.

    висновок:

    У цьому посібнику ми розглянули деякі з найважливіших функцій та ідей Python, включаючи змінні, типи даних, цикли, функції, модулі тощо. Також обговорювалися складніші теми, зокрема веб-скрейпінг, обробка природної мови, паралелізм і підключення до бази даних. Ви матимете міцну основу для продовження вивчення Python та його програм, використовуючи інформацію, отриману з цього уроку.

    алгоритми сортування вставками

    Пам’ятайте, що практика та розробка коду є найкращим методом вивчення Python. Ви можете знайти багато ресурсів на javaTpoint для підтримки вашого подальшого навчання, включаючи документацію, навчальні посібники, онлайн-групи тощо. Ви можете освоїти Python і використовувати його для створення чудових речей, якщо наполегливо працюватимете та будете наполегливі.

    Передумова

    Перш ніж вивчати Python, ви повинні мати базові знання концепцій програмування.

    Аудиторія

    Наш підручник з Python розроблений, щоб допомогти новачкам і професіоналам.

    проблема

    Ми запевняємо, що ви не знайдете жодних проблем у цьому підручнику з Python. Але якщо є якась помилка, будь ласка, опублікуйте проблему в контактній формі.