パイソン は広く使用されているプログラミング言語であり、次のような言語と比較していくつかの独自の機能と利点を提供します。 ジャワ そして C++。 私たちの Python チュートリアルでは、インストールから始まり、Python の基本と高度な概念を徹底的に説明しています。 条件文 、ループ 、組み込みデータ構造 、オブジェクト指向プログラミング 、ジェネレーター 、例外処理 、Python RegEx 、およびその他の多くの概念。このチュートリアルは、初心者と現役の専門家向けに設計されています。
1980年代後半、 グイド・ファン・ロッサム Pythonを開発することを夢見ていました。の最初のバージョン Python 0.9.0は1991年にリリースされました 。 Python はリリース以来、人気が高まり始めました。レポートによると、Python はテクノロジー分野での需要が高いため、現在開発者の間で最も人気のあるプログラミング言語となっています。
パイソンとは
Python は、動的に型指定され、コンパイルおよび解釈され、ガベージ コレクションが行われる、手続き型プログラミング、オブジェクト指向プログラミング、関数型プログラミングをサポートする純粋なオブジェクト指向の汎用プログラミング言語です。
Python の特徴:
Pythonにはたくさんあります ウェブベースのアセット 、 オープンソースプロジェクト 、 そして 活気のあるコミュニティ 。開発者にとって、言語の学習、プロジェクトでの共同作業、Python エコシステムへの貢献はすべて非常に簡単になります。
Python はその単純な言語フレームワークにより、理解しやすく、コードを記述するのが容易です。このため、Python は初心者にとって素晴らしいプログラミング言語となっています。さらに、熟練のプログラマーが明確でエラーのないコードを作成できるように支援します。
Python には、その機能を簡単にするために使用できるサードパーティ ライブラリが多数あります。これらのライブラリは、Web 開発、科学技術コンピューティング、データ分析など、多くの領域をカバーしています。
Java と Python
Python は、迅速な開発やスクリプト作成タスクに最適です。一方、Java は強力な型システムとオブジェクト指向プログラミングを重視しています。
ここでは、それらの主な違いを説明するいくつかの基本的なプログラムを示します。
「Hello World」を印刷する
Python コード:
print('Hello World)'
Python では、これは 1 行のコードです。 「Hello World」を出力するには単純な構文が必要です
Java コード:
public class HelloWorld { public static void main(String[] args) { System.out.println('Hello, World!'); } }
Java では、クラス、メソッド構造、その他多くのものを宣言する必要があります。
どちらのプログラムでも同じ出力が得られますが、print ステートメントの構文の違いに気づくことができます。
NFAの例
- Python では、コードを学習して作成するのが簡単です。 Java では、特定のタスクを実行するためにより多くのコードが必要になります。
- Python は動的に型指定されるため、変数を宣言する必要がありません。一方、Java は統計的に型指定されるため、変数の型を宣言する必要があります。
- Python は、データ サイエンス、機械学習、Web 開発などのさまざまな分野に適しています。一方、Java は Web 開発、モバイル アプリ開発 (Android) などに適しています。
Pythonの基本構文
Python プログラミング言語では中括弧やセミコロンは使用されません。英語に似た言語です。ただし、Python ではコードのブロックを定義するためにインデントが使用されます。インデントとは、必要に応じてステートメントの前に空白を追加することです。
例えば -
def func(): statement 1 statement 2 ………………… ………………… statement N
上記の例では、右側の同じレベルのステートメントが関数に属します。一般に、インデントを定義するには 4 つの空白を使用できます。
他の言語で使用されるセミコロンの代わりに、Python はステートメントを NewLine 文字で終了します。
Python は大文字と小文字を区別する言語です。つまり、大文字と小文字は別々に扱われます。たとえば、「name」と「Name」は、Python では 2 つの異なる変数です。
Python では、「#」記号を使用してコメントを追加できます。 「#」記号の後に書かれたテキストはコメントとみなされ、インタプリタによって無視されます。このトリックは、コードにメモを追加したり、コード ブロックを一時的に無効にしたりする場合に役立ちます。また、他の開発者がコードをより深く理解するのにも役立ちます。
'もし' 、 'otherwise'、 'for' 、 'while' 、 'try'、 'excel'、および 'finally' は、変数名として使用できない Python のいくつかの予約済みキーワードです。これらの用語は特定の理由でこの言語で使用され、固定された意味を持っています。これらのキーワードを使用すると、コードにエラーが含まれる可能性があり、インタープリタが新しい変数の可能性があるとしてそれらを拒否する可能性があります。
Pythonの歴史
Python は Guido van Rossum によって作成されました 。 1980 年代後半、オランダ人プログラマーの Guido van Rossum は、オランダの Centrum Wiskunde & Informatica (CWI) に在籍中に Python の開発を始めました。彼はその後継者を作りたかった ABCプログラミング言語 それは読みやすく効率的です。
1991 年 2 月に、Python の最初の公開バージョンであるバージョン 0.9.0 がリリースされました。 これにより正式に誕生しました。 オープンソース プロジェクトとしての Python 。この言語はイギリスのコメディ シリーズ「」にちなんで命名されました。 モンティ・パイソンのフライング・サーカス '。
Python の開発はいくつかの段階を経て行われます。 1994 年 1 月、Python 1.0 は使いやすく安定したプログラミング言語としてリリースされました。 このバージョンには、今日でも Python に存在する機能の多くが含まれていました。
1990年代から2000年代にかけて , Pythonはそのシンプルさ、読みやすさ、多機能さで人気を博しました。 2000 年 10 月に Python 2.0 がリリースされました。 。 Python 2.0 では、リスト内包表記、ガベージ コレクション、および Unicode のサポートが導入されました。
2008 年 12 月に、Python 3.0 がリリースされました。 Python 3.0 では、コードの可読性と保守性を向上させるために、下位互換性のない変更がいくつか導入されました。
2010 年代を通じて、特に機械学習や Web 開発などの分野で Python の人気が高まりました。ライブラリとフレームワークの豊富なエコシステムにより、開発者の間で人気がありました。
の Python ソフトウェア財団 (PSF) は 2001 年に設立されました Python プログラミング言語とそのコミュニティを促進、保護、発展させること。
なぜPythonを学ぶのか?
Python はプログラマに多くの便利な機能を提供します。これらの特徴により、この言語は最も人気があり、広く使用されています。以下に Python のいくつかの重要な機能をリストしました。
- オブジェクト指向言語 : オブジェクト指向プログラミングをサポートしているため、再利用可能なモジュール式コードを簡単に作成できます。
Pythonはどこで使われているのでしょうか?
Python は汎用の人気のあるプログラミング言語であり、ほぼすべての技術分野で使用されています。 Python の使用のさまざまな分野を以下に示します。
- 人工知能 : AI は新興テクノロジーであり、Python は TensorFlow 、 Keras 、 PyTorch などの強力なライブラリが利用できるため、人工知能と機械学習に最適な言語です。
- DevOps : Python は、インフラストラクチャ管理、構成管理、展開プロセスの自動化とスクリプト作成のために DevOps で広く使用されています。
- リクエスト : HTTP リクエストを行うためのライブラリ
- SQLアルケミー : SQL データベースを操作するためのライブラリ
- 絶望的な : マルチタッチ アプリケーションを構築するためのフレームワーク
- パイゲーム : ゲーム開発用のライブラリ
- RESTフレームワーク : RESTful API を構築するためのツールキット
- ファストAPI : API を構築するための最新の高速 Web フレームワーク
- ストリームライト : 機械学習とデータ サイエンス用のインタラクティブな Web アプリを構築するためのライブラリ
- NLTK : 自然言語処理用のライブラリ
Python には、機械学習、人工知能、Web アプリケーションなど、さまざまな分野で広く使用されている幅広いライブラリやフレームワークがあります。Python の人気のあるフレームワークとライブラリのいくつかを次のように定義します。
Pythonのprint()関数
Python print() 関数は、コンソールまたはターミナルに出力を表示するために使用されます。これにより、テキスト、変数、その他のデータを人間が読める形式で表示できます。
構文:
print(オブジェクト、sep=セパレータ、end=エンド、file=ファイル、flush=フラッシュ)
カンマ(,)で区切られた1つ以上の引数を受け取り、デフォルトで最後に「改行」を追加します。
パラメーター:
- オブジェクト - 表示したいデータの数だけ、最初に文字列に変換され、コンソールに出力されます。
- sep - 渡された区切り文字でオブジェクトを区切ります。デフォルト値 = ' '。
- end - 改行文字で行を終了します
- file - write メソッドを持つファイル オブジェクト、デフォルト値 = 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 ステートメントを使用して、文字列、整数、および浮動小数点値を人間が判読できる形式で出力します。
print ステートメントは、デバッグ、ログ記録、およびユーザーへの情報提供に使用できます。
Python の条件文
条件ステートメントは、特定の条件に対して特定のブロックを実行するのに役立ちます。このチュートリアルでは、条件式を使用して別のステートメント ブロックを実行する方法を学びます。 Python には、論理条件を設定するための if および else キーワードが用意されています。の エリフ キーワードは条件文としても使用されます。
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
上記のコードには、それぞれ 10 と 5 の 2 つの変数 x と y があります。次に、if..else ステートメントを使用して、x が y より大きいか、またはその逆かをチェックしました。最初の条件が true の場合、「x は y より大きい」というステートメントが出力されます。最初の条件が false の場合、代わりにステートメント「y は x 以上です」が出力されます。
if キーワードは条件が true であることを確認し、その中のコード ブロックを実行します。条件が false の場合、else ブロック内のコードが実行されます。このように、if..else ステートメントは、条件に基づいてコードのさまざまなブロックを実行するのに役立ちます。
これについては、Python チュートリアルの次の記事で詳しく説明します。
Python ループ
場合によっては、プログラムの流れを変更する必要があるかもしれません。特定のコードの実行を数回繰り返す必要がある場合があります。この目的のために、プログラミング言語は、特定のコードを複数回繰り返すことができるさまざまなループを提供します。ステートメントを詳しく理解するには、次のチュートリアルを検討してください。
PythonのForループ
fruits = ['apple', 'banana', 'cherry'] for x in fruits: print(x, end=' ')
出力:
apple banana cherry
Python While ループ
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 ' <strong>[]</strong> '.</li> </ul> <p> <strong>Example:</strong> </p> <pre> # Create a list fruits = ['apple', 'banana', 'cherry'] print('fuirts[1] =', fruits[1]) # Modify list fruits.append('orange') print('fruits =', fruits) num_list = [1, 2, 3, 4, 5] # Calculate sum sum_nums = sum(num_list) print('sum_nums =', sum_nums) </pre> <p> <strong>Output:</strong> </p> <pre> fuirts[1] = banana fruits = ['apple', 'banana', 'cherry', 'orange'] 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't be modified once created.</li> <li>They are defined using open bracket ' <strong>()</strong> '.</li> </ul> <p> <strong>Example:</strong> </p> <pre> # Create a tuple point = (3, 4) x, y = point print('(x, y) =', x, y) # Create another tuple tuple_ = ('apple', 'banana', 'cherry', 'orange') print('Tuple =', tuple_) </pre> <p> <strong>Output:</strong> </p> <pre> (x, y) = 3 4 Tuple = ('apple', 'banana', 'cherry', 'orange') </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't be accessed using indices.</li> <li>Sets <strong>do not contain duplicate elements</strong> .</li> <li>They are defined using curly braces ' <strong>{}</strong> '</li> </ul> <p> <strong>Example:</strong> </p> <pre> # Create a set set1 = {1, 2, 2, 1, 3, 4} print('set1 =', set1) # Create another set set2 = {'apple', 'banana', 'cherry', 'apple', 'orange'} print('set2 =', set2) </pre> <p> <strong>Output:</strong> </p> <pre> set1 = {1, 2, 3, 4} set2 = {'apple', 'cherry', 'orange', 'banana'} </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 ' <strong>{}</strong> ' with key-value pairs <strong>separated by colons ':'</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 = {'name': 'Umesh', 'age': 25, 'city': 'Noida'} print('person =', person) print(person['name']) # Modify Dictionary person['age'] = 27 print('person =', person) </pre> <p> <strong>Output:</strong> </p> <pre> person = {'name': 'Umesh', 'age': 25, 'city': 'Noida'} Umesh person = {'name': 'Umesh', 'age': 27, 'city': 'Noida'} </pre> <p>These are just a few examples of Python'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 'walrus operator':= 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 'on the fly' 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'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's file input/output (I/O) system</strong> offers programs to communicate with files stored on a disc. Python'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 ' <strong>r</strong> ' for reading, ' <strong>w</strong> ' for writing, or ' <strong>a</strong> ' 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 ('Enter a number: ')) y = 10 / x print ('Result:', y) except ZeroDivisionError: print ('Error: Division by zero') except ValueError: print ('Error: Invalid input') </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 'comma separated values', 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('data.csv', 'r') 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 = [ ['Name', 'Age', 'Country'], ['Alice', '25', 'USA'], ['Bob', '30', 'Canada'], ['Charlie', '35', 'Australia'] ] with open('data.csv', 'w') 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'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 'magic' 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 ' double underscore ' 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's an example</p> <pre> class Person: def __init__(self, name, age): self.name = name self.age = age def __str__(self): return f'{self.name} ({self.age})' person = Person('Vikas', 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'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'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'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'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'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's execution while keeping the local state. It picks up right where it left off when it is restarted. Because we don'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'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'{func.__name__} took {end-start:.5f} seconds to run.') return result return wrapper @time_it def my_function(n): time.sleep(2) print(f'Factorial of {n} = {factorial(n)}') 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 ' <strong>concurrency</strong> ' describes a program's capacity to carry out several tasks at once, enhancing the program'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'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'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'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'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 'natural language processing' (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've looked at some of Python'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 の 2 種類のループ (For ループと While ループ) の使用を示しました。
For ループは、リスト、タプル、文字列などの一連の項目を反復処理するために使用されます。この例では、果物のリストを定義し、for ループを使用して各果物を出力しましたが、数値範囲を出力するために使用することもできます。
While ループは、指定された条件が true の場合にコード ブロックを繰り返します。この例では、変数 i を 1 に初期化し、while ループを使用して i の値を 6 以上になるまで出力しました。 i += 1 ステートメントは、各反復で i の値をインクリメントするために使用されます。 。
それらについてはチュートリアルで詳しく学びます。
Python データ構造
Python は 4 つの組み込みデータ構造を提供します。 リスト 、 タプル 、 セット 、 そして 辞書 これにより、効率的な方法でデータを保存できるようになります。以下は、Python で一般的に使用されるデータ構造とコード例です。
1. リスト
- リストは 注文されたコレクション さまざまなデータ型のデータ要素の。
- リストは 可変 つまり、リストはいつでも変更できます。
- 要素は次のとおりです インデックスを使用してアクセスする 。
- これらは角括弧 ' を使用して定義されます。 [] '。
例:
# Create a list fruits = ['apple', 'banana', 'cherry'] print('fuirts[1] =', fruits[1]) # Modify list fruits.append('orange') print('fruits =', fruits) num_list = [1, 2, 3, 4, 5] # Calculate sum sum_nums = sum(num_list) print('sum_nums =', sum_nums)
出力:
fuirts[1] = banana fruits = ['apple', 'banana', 'cherry', 'orange'] sum_nums = 15
2.タプル
- タプルも 注文されたコレクション リストと同様に、さまざまなデータ型のデータ要素のリスト。
- 要素は次のとおりです インデックスを使用してアクセスする 。
- タプルは 不変 つまり、タプルは一度作成すると変更できません。
- これらは開き括弧 ' を使用して定義されます。 () '。
例:
# Create a tuple point = (3, 4) x, y = point print('(x, y) =', x, y) # Create another tuple tuple_ = ('apple', 'banana', 'cherry', 'orange') print('Tuple =', tuple_)
出力:
(x, y) = 3 4 Tuple = ('apple', 'banana', 'cherry', 'orange')
3. セット
- セットは 順序なし さまざまなデータ型の不変データ要素のコレクション。
- セットは 可変 。
- インデックスを使用して要素にアクセスすることはできません。
- セット 重複した要素が含まれていないこと 。
- これらは中括弧 ' を使用して定義されます。 {} '
例:
# Create a set set1 = {1, 2, 2, 1, 3, 4} print('set1 =', set1) # Create another set set2 = {'apple', 'banana', 'cherry', 'apple', 'orange'} print('set2 =', set2)
出力:
set1 = {1, 2, 3, 4} set2 = {'apple', 'cherry', 'orange', 'banana'}
4. 辞書
- 辞書は キーと値のペア これにより、値を一意のキーに関連付けることができます。
- これらは中括弧 ' を使用して定義されます。 {} ' キーと値のペアを使用 コロン「:」で区切る 。
- 辞書というのは、 可変 。
- 要素にはキーを使用してアクセスできます。
例:
# Create a dictionary person = {'name': 'Umesh', 'age': 25, 'city': 'Noida'} print('person =', person) print(person['name']) # Modify Dictionary person['age'] = 27 print('person =', person)
出力:
person = {'name': 'Umesh', 'age': 25, 'city': 'Noida'} Umesh person = {'name': 'Umesh', 'age': 27, 'city': 'Noida'}
これらは、Python の組み込みデータ構造のほんの数例です。各データ構造には独自の特性と使用例があります。
Python 関数プログラミング
Python チュートリアルのこのセクションでは、ラムダ関数や再帰関数など、関数型プログラミングに関連するいくつかの重要なツールを定義します。これらの関数は、複雑なタスクを実行する際に非常に効率的です。 Reduce、map、filter など、いくつかの重要な関数を定義します。 Python は、さまざまな関数型プログラミング ツールを含む functools モジュールを提供します。関数型プログラミングの詳細については、次のチュートリアルを参照してください。
Python の最新バージョンには、関数型プログラミングをより簡潔かつ表現力豊かにする機能が導入されています。たとえば、「walrus 演算子」:= を使用すると、式内でインライン変数の代入が可能になります。これは、ネストされた関数呼び出しやリスト内包表記を操作するときに便利です。
Python関数
- ラムダ関数 - ラムダ関数は小さく、 無名関数 任意の数の引数を取ることができますが、式を 1 つだけ持つことができます。 Lambda 関数は、名前付き関数を定義せずに「オンザフライ」で関数を作成するために関数プログラミングでよく使用されます。
- 再帰関数 - 再帰関数は、問題を解決するために自分自身を呼び出す関数です。再帰関数は、関数プログラミングで複雑な計算を実行したり、複雑なデータ構造を走査したりするためによく使用されます。
- マップ機能 - map() 関数は、指定された関数を反復可能オブジェクトの各項目に適用し、その結果を含む新しい反復可能オブジェクトを返します。入力反復可能には、リスト、タプル、またはその他を指定できます。
- フィルター機能 - filter() 関数は、最初の引数として渡された関数が True を返す反復可能オブジェクトから反復子を返します。指定された条件を満たさない項目を反復可能からフィルターで除外します。
- リデュース機能 -reduce() 関数は、2 つの引数の関数を反復可能項目に左から右に累積的に適用して、単一の値に減らします。
- 関数ツールモジュール - Python の functools モジュールは、partial() やreduce() など、他の関数を操作する高次関数を提供します。
- カリーニング機能 - カリー化関数は、複数の引数を受け取り、それぞれが 1 つの引数を取る一連の関数を返す関数です。
- メモ化機能 - メモ化は、高価な関数呼び出しの結果をキャッシュし、同じ入力が再度発生したときにキャッシュされた結果を返すために関数型プログラミングで使用される手法です。
- スレッド機能 - スレッド化は、コードをより効率的かつ高速にするために複数のタスクを同時に実行する関数型プログラミングで使用される手法です。
Pythonモジュール
Python モジュールは、Python コードまたは関数を含むプログラム ファイルです。 Python には、ユーザー定義モジュールと組み込みモジュールの 2 種類のモジュールがあります。ユーザーが定義したモジュール、または .py 拡張子で保存された Python コードは、ユーザー定義モジュールとして扱われます。
組み込みモジュールは、Python の事前定義されたモジュールです。モジュールの機能を使用するには、それらを現在作業中のプログラムにインポートする必要があります。
Python モジュールは、任意の Python プログラムにインポートできる再利用可能なコードと機能を提供するため、言語のエコシステムにとって不可欠です。以下に、いくつかの Python モジュールの例とそれぞれの簡単な説明を示します。
数学 : ユーザーは数学定数、円周率、三角関数にアクセスできます。
日付時刻 : 日付、時刻、期間を操作する簡単な方法のためのクラスを提供します。
あなた : プロセスやファイル システム アクティビティの管理など、ベース オペレーティング システムとの対話を可能にします。
ランダム : ランダム関数は、ランダムな整数を生成し、リストからランダムな項目を選択するためのツールを提供します。
JSON : JSON はエンコードおよびデコードが可能なデータ構造であり、オンライン API やデータ交換で頻繁に使用されます。このモジュールを使用すると、JSON を処理できるようになります。
リ : 強力なテキスト検索およびテキスト操作ツールである正規表現をサポートします。
コレクション : ソートされた辞書、デフォルトの辞書、名前付きタプルなどの代替データ構造を提供します。
ナムピー : NumPy は、配列と行列の数値演算をサポートする科学計算用のコア ツールキットです。
パンダ : 時系列やその他の構造化データ タイプを処理するための高レベルのデータ構造と操作を提供します。
リクエスト : Web API 用のシンプルなユーザー インターフェイスを提供し、HTTP リクエストを実行します。
Python ファイル I/O
ファイルは、コンピュータのディスクにデータを保存するために使用されます。このチュートリアルでは、Python の組み込みファイル オブジェクトについて説明します。 Python スクリプトを使用してファイルを開いて、書き込み、読み取り、追加などのさまざまな操作を実行できます。ファイルを開くにはさまざまな方法があります。関連する例を挙げて説明します。また、バイナリ ファイルに対して読み取り/書き込み操作を実行する方法も学習します。
Python のファイル入出力 (I/O) システム ディスクに保存されているファイルと通信するプログラムを提供します。ファイル オブジェクトの Python の組み込みメソッドを使用すると、ファイルへのデータの読み取り、書き込み、追加などのアクションを実行できます。
の 開ける() Python のメソッドは、ファイルを操作するときにファイル オブジェクトを作成します。開かれるファイルの名前とファイルが開かれるモードは、この関数に必要な 2 つのパラメータです。このモードは、ファイルに対して実行する必要がある作業に応じて使用できます。 r 「読書用」 で ' 書き込み用、または ' ある ' を添付します。
オブジェクトの作成に成功したら、作業に応じてさまざまな方法を使用できます。ファイルに書き込みたい場合は write() 関数を使用でき、読み取りと書き込みの両方を行いたい場合は append() 関数を使用できます。ファイルの内容のみを読み取りたい場合は、append() 関数を使用できます。このファイルでは read() 関数を使用できます。テキスト形式ではなくバイナリ形式のデータを含むバイナリ ファイルも、Python を使用して操作できます。バイナリ ファイルは、人間が直接理解できない方法で記述されています。の RB そして wb モードでは、バイナリ ファイル内のバイナリ データを読み書きできます。
Python の例外
例外は、プログラムの流れの中断を引き起こすプログラム内の異常な状態として定義できます。
例外が発生するたびにプログラムは実行を停止するため、他のコードは実行されません。したがって、Python スクリプトを処理できない実行時エラーは例外となります。例外は、エラーを表す Python オブジェクトです。
Python の例外 これらは、Python プログラミングにおけるエラー処理の重要な側面です。プログラムで予期しない状況やエラーが発生すると、例外が発生し、プログラムの通常のフローが中断される可能性があります。
Python では、例外は、エラーの種類やメッセージなど、エラーに関する情報を含むオブジェクトとして表されます。 Python の最も一般的なタイプの例外は、他のすべての組み込み例外の基本クラスである Exception クラスです。
Python で例外を処理するには、 試す そして を除外する 発言。の 試す ステートメントは例外を発生させる可能性のあるコードを囲むために使用されますが、 を除外する ステートメントは、例外が発生したときに実行する必要があるコードのブロックを定義するために使用されます。
たとえば、次のコードを考えてみましょう。
try: x = int ( input ('Enter a number: ')) y = 10 / x print ('Result:', y) except ZeroDivisionError: print ('Error: Division by zero') except ValueError: print ('Error: Invalid input')
出力:
ボイド0
Enter a number: 0 Error: Division by zero
このコードでは、try ステートメントを使用して除算演算の実行を試みます。これらの操作のいずれかで例外が発生した場合、一致する例外ブロックが実行されます。
Python には、同様の状況で発生する可能性のある組み込みの例外も多数用意されています。一般的な組み込み例外には次のようなものがあります。 IndexError、TypeError 、 そして 名前エラー 。また、Exception クラスを継承する新しいクラスを作成することで、カスタム例外を定義できます。
Python CSV
CSV は「カンマ区切り値」の略で、特定の構造を使用して表形式のデータを配置する単純なファイル形式として定義されます。スプレッドシートやデータベースなどの表形式のデータをプレーン テキストで保存し、データ交換用の共通形式を備えています。 CSV ファイルが Excel シートで開き、行と列のデータによって標準形式が定義されます。
CSV.reader 関数を使用して CSV ファイルを読み取ることができます。この関数は、CSV ファイル内の行を繰り返すために使用できるリーダー オブジェクトを返します。各行は値のリストとして返されます。各値は CSV ファイル内の列に対応します。
たとえば、次のコードを考えてみましょう。
import csv with open('data.csv', 'r') as file: reader = csv.reader(file) for row in reader: print(row)
ここでは、ファイル data.csv を読み取りモードで開き、 csv.リーダー を使用したオブジェクト csv.reader() 関数。次に、for ループを使用して CSV ファイル内の行を反復処理し、各行をコンソールに出力します。
使用できます CSV.writer() CSVファイルにデータを書き込む機能です。 CSV ファイルに行を書き込むために使用できるライター オブジェクトを返します。を呼び出すことで行を書き込むことができます。 ライター() Writer オブジェクトのメソッド。
たとえば、次のコードを考えてみましょう。
import csv data = [ ['Name', 'Age', 'Country'], ['Alice', '25', 'USA'], ['Bob', '30', 'Canada'], ['Charlie', '35', 'Australia'] ] with open('data.csv', 'w') as file: writer = csv.writer(file) for row in data: writer.writerow(row)
このプログラムでは、データと呼ばれるリストのリストを作成します。内部の各リストはデータの行を表します。次に、ファイル data.csv を書き込みモードで開き、 CSVライター CSV.writer関数を使用してオブジェクトを作成します。次に、for ループを使用してデータ内の行を反復処理し、ライター メソッドを使用して各行を CSV ファイルに書き込みます。
Python のメール送信
Python スクリプトを使用してメールを送信したり読んだりできます。 Python の標準ライブラリ モジュールは、PoP3 や IMAP などのさまざまなプロトコルを処理するのに役立ちます。 Python が提供するのは、 smtplib SMTP (Simple Mail Transfer Protocol) を使用して電子メールを送信するためのモジュール。 Python スクリプトから人気の電子メール サービス SMTP を使用してメールを送信する方法を学びます。
Python のマジックメソッド
Python のマジック メソッドは、クラスに「魔法」を追加する特別なメソッドです。二重アンダースコアで始まり、終わります。例: _熱い_ または _str_ 。
組み込みクラスは多くのマジック メソッドを定義します。の あなた() 関数を使用すると、クラスによって継承されたマジック メソッドの数を確認できます。メソッド名には 2 つの接頭辞と接尾辞のアンダースコアが含まれます。
- Python のマジック メソッドは、次のようにも呼ばれます。 ダンダーメソッド 、名前が二重アンダースコアで始まり、終わるため、「二重アンダースコア」メソッドの略です。
- 魔法の方法 オブジェクトの作成時、別のオブジェクトとの比較時、印刷時など、特定の状況で Python インタープリターによって自動的に呼び出されます。
- マジック メソッドを使用すると、オブジェクトの比較方法、文字列への変換方法、コンテナとしてアクセスする方法の定義など、クラスの動作をカスタマイズできます。
- よく使用される魔法の方法には次のようなものがあります。 熱 オブジェクトを初期化する場合は str 、オブジェクトを文字列に変換する場合は 等価 2 つのオブジェクトが等しいかどうかを比較するため、および タイトルの そして セットアイテム コンテナオブジェクト内の項目にアクセスするためのものです。
たとえば、 str マジック メソッドは、オブジェクトを文字列として表現する方法を定義できます。ここに例があります
class Person: def __init__(self, name, age): self.name = name self.age = age def __str__(self): return f'{self.name} ({self.age})' person = Person('Vikas', 22) print(person)
出力:
Vikas (22)
この例では、人物の名前と年齢を含む Person オブジェクトの書式設定された文字列表現を返す str メソッドが定義されています。
もう一つよく使われる魔法の方法は、 等価 、オブジェクトが等しいかどうかを比較する方法を定義します。以下に例を示します。
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
この例では、 等価 メソッドは、2 つの Point オブジェクトが同じ x 座標と y 座標を持つ場合は True を返し、それ以外の場合は False を返すように定義されています。
Python おっとの概念
Python では、整数値、浮動小数点、関数、クラスを含め、すべてがオブジェクトとして扱われます。それとは別に、Python はすべての指向性の概念をサポートします。以下に、Python の Oops の概念を簡単に紹介します。
- クラスとオブジェクト - Python クラスはオブジェクトの設計図です。オブジェクトは、データとそのデータに作用するメソッドのコレクションです。
- 継承 - 継承とは、あるクラスが他のクラスのプロパティを継承する手法です。
- コンストラクタ - Python は、コンストラクターとして知られる特別なメソッド __init__() を提供します。このメソッドは、オブジェクトがインスタンス化されるときに自動的に呼び出されます。
- ポリモーフィズム - ポリモーフィズムは、オブジェクトがさまざまな形をとることができる概念です。 Python では、メソッドのオーバーロードとメソッドのオーバーライドを通じてポリモーフィズムを実現できます。
- メソッドのオーバーライド - メソッドのオーバーライドは、サブクラスがそのスーパークラスですでに定義されているメソッドを実装する概念です。
- カプセル化 - カプセル化とは、データとメソッドを単一のユニットにラップすることです。 Python では、カプセル化は、public、private、protected などのアクセス修飾子によって実現されます。ただし、Python はアクセス修飾子を厳密に強制するものではなく、命名規則によってアクセス レベルが示されます。
- データの抽象化 : データの複雑さを隠し、重要な機能のみをユーザーに表示する手法。データを操作するためのインターフェイスを提供します。データの抽象化により複雑さが軽減され、コードがよりモジュール化されるため、開発者はプログラムの重要な機能に集中できるようになります。
Oops の概念を詳しく読むには、次のリソースを参照してください。
- Python おっとの概念 - Python のオブジェクト指向パラダイムは、クラスとオブジェクトを使用してプログラムを設計することです。オブジェクトは本、家、鉛筆などの実際のエンティティに関連しており、クラスはそのプロパティと動作を定義します。
- Python のオブジェクトとクラス - Python では、オブジェクトはクラスのインスタンスであり、クラスはデータの構造と動作を定義する設計図です。
- Python コンストラクター - コンストラクターは、オブジェクトの作成時にオブジェクトの属性を初期化するために使用されるクラス内の特別なメソッドです。
- Pythonの継承 - 継承とは、新しいクラス (サブクラスまたは子クラス) が既存のクラス (スーパークラスまたは親クラス) のプロパティと動作を継承するメカニズムです。
- Python ポリモーフィズム - ポリモーフィズムにより、異なるクラスのオブジェクトを共通のスーパークラスのオブジェクトとして扱うことができ、異なるクラスを共通のインターフェイスを通じて交換的に使用できるようになります。
Python の上級トピック
Python には、プログラマーが複雑なタスクを解決するのに役立つ多くの進歩と便利な概念が含まれています。これらの概念を以下に示します。
Python イテレータ
イテレータは、単に反復可能なオブジェクトです。一度に 1 つのオブジェクトを返します。これは 2 つの特別なメソッドを使用して実装できます。 __iter__() および__next__()。
Python のイテレータは、データのコレクションに対する反復を可能にするオブジェクトです。コレクション全体をメモリにロードせずに、各コレクション要素を個別に処理します。
たとえば、指定された制限までの数値の 2 乗を返す反復子を作成してみましょう。
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's execution while keeping the local state. It picks up right where it left off when it is restarted. Because we don'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'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'{func.__name__} took {end-start:.5f} seconds to run.') return result return wrapper @time_it def my_function(n): time.sleep(2) print(f'Factorial of {n} = {factorial(n)}') 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 ' <strong>concurrency</strong> ' describes a program's capacity to carry out several tasks at once, enhancing the program'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'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'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'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'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 'natural language processing' (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've looked at some of Python'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></=>
この例では、 __iter__() メソッドと __next__() メソッドを実装することでイテレータとして機能するクラス Squares を作成しました。 __iter__() メソッドはオブジェクト自体を返し、__next__() メソッドは制限に達するまで数値の次の 2 乗を返します。
イテレータの詳細については、Python イテレータのチュートリアルを参照してください。
Python ジェネレーター
Python ジェネレーター 一連の値を生成する yield ステートメントを使用する これらはイテレータを返す関数であるため、return ではありません。ジェネレーターは、ローカル状態を維持したまま関数の実行を終了します。再起動すると、中断したところから再開されます。この機能のおかげでイテレータ プロトコルを実装する必要がなくなるため、イテレータの作成が簡単になります。以下は、数値の 2 乗を生成する単純なジェネレーター関数の図です。
# 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'{func.__name__} took {end-start:.5f} seconds to run.') return result return wrapper @time_it def my_function(n): time.sleep(2) print(f'Factorial of {n} = {factorial(n)}') my_function(25)
出力:
上記の例では、time_it デコレータ関数は別の関数を引数として受け取り、ラッパー関数を返します。ラッパー関数は、元の関数の実行時間を計算し、コンソールに出力します。 @time_it デコレータは、time_it 関数を my_function 関数に適用するために使用されます。 my_function が呼び出されると、デコレーターが実行され、タイミング機能が追加されます。
Python MySQL
Python MySQL は、強力なリレーショナル データベース管理システムです。 Python で MySQL を使用するには、環境をセットアップし、接続を確立する必要があります。 Python の SQL コマンドを使用して、新しいデータベースとテーブルを作成できます。
- 環境設定 : MySQL で Python を使用するための MySQL Connector/Python のインストールと構成。
- データベース接続 : MySQL Connector/Python を使用して Python と MySQL データベース間の接続を確立します。
- 新しいデータベースの作成 : Python を使用して MySQL に新しいデータベースを作成します。
- テーブルの作成 : SQL コマンドを使用して、Python で MySQL データベースにテーブルを作成します。
- 挿入操作 : Python および SQL コマンドを使用して MySQL テーブルにデータを挿入します。
- 読み取り操作 : Python および SQL コマンドを使用して MySQL テーブルからデータを読み取ります。
- 更新操作 : Python と SQL コマンドを使用して MySQL テーブルのデータを更新します。
- 結合操作 : Python と SQL コマンドを使用して、MySQL で 2 つ以上のテーブルを結合します。
- トランザクションの実行 : Python を使用して、MySQL で SQL クエリのグループを単一の作業単位として実行します。
その他の相対的なポイントには、エラーの処理、インデックスの作成、Python を使用した MySQL でのストアド プロシージャと関数の使用が含まれます。
Python MongoDB
Python MongoDB は、JSON のようなドキュメントにデータを保存する人気のある NoSQL データベースです。スキーマレスであり、データ ストレージに高い拡張性と柔軟性を提供します。 PyMongo ライブラリを使用すると、Python で MongoDB を使用できます。PyMongo ライブラリは、MongoDB と対話するためのシンプルで直感的なインターフェイスを提供します。
Python で MongoDB を操作する場合の一般的なタスクをいくつか示します。
- 環境設定 : システムに MongoDB と PyMongo ライブラリをインストールして構成します。
- データベース接続 : PyMongo の MongoClient クラスを使用して MongoDB サーバーに接続します。
- 新しいデータベースの作成 : MongoClient オブジェクトを使用して、新しいデータベースを作成します。
- コレクションの作成 : データベース内にコレクションを作成してドキュメントを保存します。
- 書類の挿入 : insert_one() または insert_many() メソッドを使用して、新しいドキュメントをコレクションに挿入します。
- ドキュメントのクエリ : find_one()、find() などのさまざまなクエリ メソッドを使用して、コレクションからドキュメントを取得します。
- ドキュメントの更新 : update_one() または update_many() メソッドを使用して、コレクション内の既存のドキュメントを変更します。
- 文書の削除 : delete_one() または delete_many() メソッドを使用して、コレクションからドキュメントを削除します。
- 集計 : 集計パイプライン フレームワークを使用して、グループ化、カウントなどの集計操作を実行します。
MongoDB には、データ シャーディング、レプリケーションなど、より高度なトピックが多数ありますが、これらのタスクは Python で MongoDB を操作する基本をカバーしています。
Python SQLite
リレーショナル データベースは、コンパクトでサーバーレスな自己完結型データベース エンジンである Python SQLite を使用して構築および維持されます。その機動性とシンプルさにより、ローカルまたは小規模のアプリケーションで人気のオプションとなっています。 Python には SQLite3 と呼ばれる SQLite データベースに接続するための組み込みモジュールがあり、開発者は問題なく SQLite データベースを操作できます。
SQLite3 ライブラリを通じて、SQL クエリ、 insert 、 select 、 update 、データの削除の実行や、テーブルからのデータの取得に使用できるさまざまな API メソッドが利用可能です。さらに、トランザクションが許可されるため、問題が発生した場合にプログラマが変更を元に戻すことができます。 Python SQLite は、デスクトップ、モバイル、適度なサイズの Web プログラムなど、組み込みデータベース システムを必要とするプログラムを作成するための素晴らしいオプションです。 SQLite は、使いやすさ、移植性、Python とのスムーズな接続により、データベース機能を備えた軽量アプリとして開発者の間で人気を集めています。
Python CGI
Python CGI Web サーバーを介してスクリプトを実行し、動的なオンライン コンテンツを作成するテクノロジーです。これは、外部 CGI スクリプトと Web サーバー用の通信チャネルと動的コンテンツ生成インターフェイスを提供します。 Python CGI スクリプトは、HTML Web ページを作成し、フォーム入力を処理し、データベースと通信します。 Python CGI を使用すると、サーバーが Python スクリプトを実行して結果をクライアントに提供できるようになり、動的なオンライン アプリケーションを作成するための迅速かつ効果的なアプローチが提供されます。
Python CGI スクリプトは、動的な Web ページの作成、フォームの処理、データベースとの対話など、さまざまな用途に使用できます。強力で人気のあるプログラミング言語である Python を利用してスクリプトを作成できるため、Web 作成に対するよりカスタマイズされた柔軟なアプローチが可能になります。スケーラブルで安全、保守可能なオンライン アプリケーションは、Python CGI を使用して作成できます。 Python CGI は、動的でインタラクティブなオンライン アプリケーションを構築する Web 開発者にとって便利なツールです。
Python での非同期プログラミング
非同期プログラミング アクティビティの独立した同時実行を可能にするコンピューター プログラミングのパラダイムです。これは、Web サーバー、データベース ソフトウェア、ネットワーク プログラミングなど、複数のタスクやリクエストを同時に処理する必要があるアプリケーションでよく使用されます。
Python には、非同期プログラミング用のライブラリとフレームワークとして、asyncio、Twisted、Tornado があります。その 1 つである Asyncio は、非同期プログラミング用のシンプルなインターフェイスを提供し、Python の公式非同期プログラミング ライブラリです。
コルーチンは、コード内の特定の場所で停止および再開できる関数であり、asyncio によって利用されます。これにより、多数のコルーチンが互いに干渉することなく同時に動作できるようになります。コルーチンを構築および維持するために、ライブラリは次のようないくつかのクラスとメソッドを提供します。 asyncio.gather()、 asyncio.wait()、 そして asyncio.create_task()。
コルーチンの計画と操作を担当するイベント ループも、asyncio の機能の 1 つです。非ブロック的な方法でコルーチン間を循環することにより、イベント ループはコルーチンの実行を制御し、コルーチンが別のコルーチンをブロックしないようにします。さらに、タイマーとコールバックのスケジュール設定もサポートされており、指定された時間または間隔でアクティビティを完了する必要がある場合に役立ちます。
Python の同時実行性
用語 ' 同時実行性 ' は、複数のタスクを同時に実行し、プログラムの効率を高めるプログラムの能力を表します。 Python は、非同期プログラミング、マルチプロセッシング、マルチスレッドなど、いくつかのモジュールと同時実行関連のメソッドを提供します。マルチプロセッシングではシステム上で多くのプロセスを同時に実行する必要がありますが、マルチスレッドでは単一プロセス内で多数のスレッドを同時に実行する必要があります。
の スレッドモジュール Python では、プログラマがマルチスレッドを構築できるようになります。スレッドを確立および制御するためのクラスとオペレーションを提供します。逆に、マルチプロセッシング モジュールを使用すると、開発者はプロセスを設計および制御できます。 Python の asyncio モジュールは非同期プログラミングのサポートを提供し、開発者が複数のタスクを同時に処理できるノンブロッキング コードを作成できるようにします。これらの手法を使用すると、開発者は複数のタスクを同時に処理できる高性能でスケーラブルなプログラムを作成できます。
Python のスレッド モジュールを使用すると、単一プロセス内で複数のスレッドを同時に実行できるため、I/O バウンドのアクティビティに役立ちます。
画像処理やデータ分析などの CPU を集中的に使用する操作の場合、マルチプロセッシング モジュールを使用すると、複数の CPU コア間で多数のプロセスを同時に実行できます。
asyncio モジュールは非同期 I/O をサポートし、同時実行性の高いネットワーク アプリケーション用のコルーチンを使用したシングルスレッド同時コードの作成を可能にします。
Dask のようなライブラリを使用すると、 パイスパーク 、MPI、Python も並列コンピューティングに使用できます。これらのライブラリを使用すると、ワークロードを多数のノードまたはクラスターに分散してパフォーマンスを向上させることができます。
Pythonを使用したWebスクラッチ
Web スクレイピングのプロセスは、Web サイトからデータを自動的に取得するために使用されます。さまざまなツールやライブラリが HTML やその他のオンライン形式からデータを抽出します。 Python は、使いやすさ、適応性、ライブラリの多様性により、Web スクレイピングに最も広く使用されているプログラミング言語の 1 つです。
Python を使用して Web スクレイピングを実行するには、いくつかの手順を実行する必要があります。まず、どの Web サイトをスクレイピングし、どのような情報を収集するかを決定する必要があります。次に、Web サイトにリクエストを送信し、Python のリクエスト パッケージを使用して HTML コンテンツを受信します。 HTML テキストを取得したら、次のようなさまざまな解析パッケージを使用して必要なデータを抽出できます。 美しいスープとlxml 。
Web サイトのサーバーに過剰な負荷がかかるのを防ぐために、リクエストの遅延、ユーザー エージェントの採用、プロキシの使用など、いくつかの戦略を採用できます。 Web サイトの利用規約を遵守し、robots.txt ファイルを尊重することも重要です。
Web スクレイピングでは、データ マイニング、リードの作成、価格の追跡など、さまざまな用途が可能です。ただし、無許可の Web スクレイピングは法律違反で非倫理的である可能性があるため、専門的かつ倫理的に利用することが不可欠です。
Python を使用した自然言語処理 (NLP)
「自然言語処理」(NLP) と呼ばれる人工知能 (AI) の分野では、コンピューターと人間の言語がどのように相互作用するかを研究しています。 NLP のおかげで、コンピューターは人間の言語を理解し、解釈し、生成できるようになりました。 Python は、そのシンプルさ、多用途性、そして NLTK (Natural Language Toolkit) や spaCy などの強力なライブラリにより、NLP 用のプログラミング言語としてよく知られています。
トークン化、ステミング、見出し語化、品詞タグ付け、固有表現の識別、センチメント分析などの NLP タスク用に、NLTK は完全なライブラリを提供します。 NLP モデルを開発および評価するためのさまざまなコーパス (大規模で組織化されたテキスト コレクション) があります。 NLP タスク用のもう 1 つの人気のライブラリは spaCy です。これは、膨大な量のテキストを迅速かつ効果的に処理します。簡単な変更と拡張が可能で、さまざまな NLP ワークロード用に事前トレーニングされたモデルが付属しています。
NLP は、チャットボット、感情分析、テキストの分類、機械翻訳などを含む、さまざまな実用的な目的で Python で使用できます。 NLP は、たとえばチャットボットによって、ユーザーの問い合わせを自然言語スタイルで理解して応答するために使用されます。感情分析は、ブランドのモニタリングや顧客フィードバック分析などの目的に役立ち、NLP を使用してテキストの感情 (肯定的、否定的、または中立的) を分類します。テキスト ドキュメントは、スパム検出、ニュースの分類などの目的で、自然言語処理 (NLP) を使用して事前に設定されたカテゴリに分類されます。
Python は、人間の言語を分析および処理する場合に強力で便利なツールです。開発者は、NLTK や spaCy などのライブラリを使用して、さまざまな NLP アクティビティを実行し、自然言語で消費者とコミュニケーションできる便利なアプリを作成できます。
結論:
このチュートリアルでは、変数、データ型、ループ、関数、モジュールなどを含む、Python の最も重要な機能とアイデアのいくつかを見ていきました。 Web スクレイピング、自然言語処理、並列処理、データベース接続など、より複雑なテーマについても議論されています。このレッスンで学んだ情報を使用して、Python とそのアプリケーションについて学習を続けるための強力な基礎が得られます。
春のST
コードを練習して開発することが、Python を学習する最良の方法であることを忘れないでください。 javaTpoint では、ドキュメント、チュートリアル、オンライン グループなど、さらなる学習をサポートする多くのリソースを見つけることができます。一生懸命、粘り強く取り組めば、Python をマスターして、それを使って素晴らしいものを生み出すことができます。
前提条件
Python を学習する前に、プログラミングの概念に関する基本的な知識を持っている必要があります。
観客
私たちの Python チュートリアルは、初心者と専門家を支援するように設計されています。
問題
この Python チュートリアルでは問題が見つからないことを保証します。ただし、間違いがある場合は、お問い合わせフォームに問題を投稿してください。
=>5:>