マインドマップギャラリー Python学習ノート(はじめてのPython入門)
Python の概念を学習し、Python とは何かを予備的に理解します。 Python はすでに世界で最も合理化され、習得が容易なプログラミング言語の 1 つです。 Python は、すべての主要なオペレーティング システムおよびコンピューター上で実行でき、Web サーバーの構築からデスクトップ アプリケーションの作成まであらゆる用途に使用できます。
2024-10-13 16:11:18 に編集されました이것은 곤충학에 대한 마인드 맵으로, 곤충의 생태와 형태, 생식 및 발달, 곤충과 인간의 관계를 연구하는 과학입니다. 그것의 연구 대상은 곤충으로, 가장 다양하고 가장 많은 수의 동물이며 생물학적 세계에서 가장 널리 분포되어 있습니다.
이것은 어린이의 내부 동기를 육성하는 방법에 대한 마인드 맵입니다. 기업가를위한 실용적인 가이드, 주요 내용 : 요약, 7. 정서적 연결에주의를 기울이고, 과도한 스트레스를 피하십시오.
이것은 자동화 프로젝트 관리 템플릿, 주요 내용에 대한 마인드 맵입니다. 메모, 시나리오 예제, 템플릿 사용 지침, 프로젝트 설정 검토 단계 (What-Why-How), 디자인 검토 단계 (What-Why-How), 수요 분석 단계 (What-Why-How)에 대한 마인드 맵입니다.
이것은 곤충학에 대한 마인드 맵으로, 곤충의 생태와 형태, 생식 및 발달, 곤충과 인간의 관계를 연구하는 과학입니다. 그것의 연구 대상은 곤충으로, 가장 다양하고 가장 많은 수의 동물이며 생물학적 세계에서 가장 널리 분포되어 있습니다.
이것은 어린이의 내부 동기를 육성하는 방법에 대한 마인드 맵입니다. 기업가를위한 실용적인 가이드, 주요 내용 : 요약, 7. 정서적 연결에주의를 기울이고, 과도한 스트레스를 피하십시오.
이것은 자동화 프로젝트 관리 템플릿, 주요 내용에 대한 마인드 맵입니다. 메모, 시나리오 예제, 템플릿 사용 지침, 프로젝트 설정 검토 단계 (What-Why-How), 디자인 검토 단계 (What-Why-How), 수요 분석 단계 (What-Why-How)에 대한 마인드 맵입니다.
Python学習ノート(はじめてのPython入門)
パート 1 プログラミングの概要
第 1 章 Python の概念の最初の紹介
プログラミングとは何ですか?
プログラミングとは、コンピュータに実行させる命令を記述することを指します。
コンピュータが実行する命令はコードと呼ばれます。
パイソンとは何ですか?
Python は、オランダのプログラマー、Guido van Rossum によって発明されたオープンソース プログラミング言語です。
Python はすでに世界で最も合理化され、習得が容易なプログラミング言語の 1 つです。 Python は、すべての主要なオペレーティング システムおよびコンピューター上で実行でき、Web サーバーの構築からデスクトップ アプリケーションの作成まであらゆる用途に使用できます。
インタラクティブシェル
Python には、Interactive Development Environment の略である IDLE と呼ばれるプログラムが付属しています。 IDLEにPythonコードを入力していきます。
プログラム IDLE は対話型シェルと呼ばれます。 Python コードを直接入力すると、プログラムが結果を出力します。
テキストエディタ
IDLE アプリケーションを起動し、「ファイル」をクリックして「新規ファイルの作成」を選択します。テキストエディタが開きます。
コードはテキスト エディタで作成し、後で実行できるように保存できます。
テキスト編集と対話型シェルの違い
1. テキスト エディタは、プログラムを保存して編集する場合に適しています。対話型シェルに間違ったコードを入力してエラーが発生した場合は、すべてのコードを再入力する必要があります。テキストエディタを使用すれば、修正して再実行するだけです。
2. ファイルからプログラムを実行した場合の出力は、対話型シェルからプログラムを実行した場合の出力とは若干異なります。プログラムがどこから実行されているかに注意してください。
用語集
プログラミング: コンピューターが実行するコマンドを作成します。
コード: コンピュータが実行するためにプログラマーによって書かれた命令。
低レベル プログラミング言語: 高レベル プログラミング言語 (英語に似たプログラミング言語) よりもバイナリ (0 と 1) で命令を記述することに近いプログラミング言語。
アセンブリ言語: 習得するのが難しいプログラミング言語。
高レベルのプログラミング言語: 低レベルの編集言語よりも英語に近いプログラミング言語。
第 2 章 プログラミングの概要
コメント: 英語またはその他の自然言語で記述されたコードの行 (または一部) 行の先頭に、このコード行を無視するように言語に指示する特別なマークがあります。 Python は # を使用してコメントを作成します。
コメントの目的は、コードの動作を説明することです。
コメントが必要になるのは、コード内で特別な操作が実行される場合、またはコードが明確で理解しにくい場合のみです。
Print (印刷)、二重引用符を忘れずに追加する限り、プログラムは何でも印刷できます。
コード行: Python プログラムはコード行で構成されます。
通常、コードはコードの行数によって区別されます。
IDLE では、「編集」メニューを開き、「行へ移動」ボタンを選択すると、プログラムの指定した行にジャンプできます。
対話型シェルでは、一度に 1 行のコードのみを入力でき、複数行のコードをコピーして貼り付けることはできません。
コードの一部が 1 行よりも長い場合は、三重引用符、括弧、角括弧、または中括弧を使用して新しい行に拡張できます。
バックスラッシュ\ を使用してコードをラップすることもできます。
キーワード: Python などのプログラミング言語で特別な意味を持ついくつかの単語。
間隔: インデントは、コード ブロックの開始位置と終了位置を Python インタプリタに伝えます。 Python のインデント距離は常にスペース 4 つです。
データ型
Python はデータをさまざまなカテゴリ、つまりデータ型に分類します。
文字列 (str、string の省略形)、文字列は引用符で囲まれた 1 つ以上の文字のシーケンスです。
整数データ (int、プロセス全体が整数)、整数データ。
Float、浮動小数点数、Decimal (小数点付きの数値) データ型。
ブール値 (bool、boolean) には、True と False の 2 つの値のみがあります。
None タイプ。その値は常に None で、データが欠落していることを示すために使用されます。
Python では、各データ値をオブジェクトと呼びます。
オブジェクトは 3 つのプロパティを持つデータ値と考えることができます。
一意の識別子: コンピューター メモリ内のアドレスを指し、変更されません。
データ型: オブジェクトが属するデータ カテゴリであり、オブジェクトのプロパティを決定し、変更されません。
値: オブジェクトを表すデータ。
定数と変数
定数とは、決して変化しない値です。
変数とは、変化する値を指します。
変数は、代入演算子の等号を使用して値が割り当てられる 1 つ以上の文字名で構成されます。
変数の命名に関する 4 つの原則
1. 変数名にスペースを含めることはできません。変数名に 2 つの単語を使用する場合は、間にアンダースコアを追加します。
2. 変数名には、特定の文字、数字、アンダースコアのみを使用できます。
3. 変数名を数字で始めることはできません。
4. Python キーワードを変数名として使用することはできません。
文法 (構文) は、言語の文の構造、特に単語の順序を規制する一連の規則とプロセスを指します。
エラーと例外
Python の 2 種類のエラー: 構文エラーと例外。
算術演算子
Python では演算子を複数の種類に分けており、算術演算子は単純な算術計算に使用されます。
第3章 機能
機能: 入力を受け入れ、命令を実行し、出力を返す複合ステートメント。
関数の呼び出しとは、命令を実行して出力を返すために必要な入力を関数に提供することを意味します。
パラメーター: 関数への各入力はパラメーターです。関数にパラメータを渡すことを「関数パラメータの受け渡し」といいます。
必須パラメータ: ユーザーが関数を呼び出すときは、すべての必須パラメータを渡す必要があります。渡さないと、Python は例外エラーを報告します。
オプションのパラメーター: 関数は必要な場合にのみ渡され、プログラムの実行には必要ありません。オプションのパラメーターが渡されない場合、関数はデフォルト値を使用します。
関数を定義する: Python で関数を作成するには、関数名を選択し、そのパラメーター、動作、および戻り値を定義する必要があります。
関数名: キーワード def は、関数が定義されていることを Python オペレーターに伝えます。
def キーワードの後に、関数の名前を指定します。名前の選択は変数名と同じ規則に従います。
慣例により、関数名には大文字を使用しないでください。また、単語はアンダースコアで区切る必要があります (like_this)。
パラメーター: 関数に名前を付けた後、名前の後に 1 対のかっこを追加します。かっこ内には、関数に受け入れさせるパラメーターを指定します。
関数は 1 つ以上のパラメータを持つことも、パラメータを受け入れないこともできます。パラメータを必要としない関数を定義する場合は、関数を定義するときに括弧を空のままにするだけで済みます。
定義: 括弧の後にコロンを追加し、4 つのスペースで囲んでインデントします。コロン以降の 4 つのスペースでインデントされたすべてのコードが関数の定義です。
戻り値: キーワード return は、関数呼び出し時に出力される値を指定します。これを関数の戻り値と呼びます。
プログラムの後半で関数の戻り値を使用する必要がある場合は、関数の戻り値を変数に保存することをお勧めします。
関数には return ステートメントが含まれている必要があります。関数に return ステートメントがない場合は、None が返されます。
構文: 「[関数名]([カンマ区切りの引数])」という構文を使用して関数を呼び出すことができます。
組み込み関数: Python プログラミング言語には、追加作業なしでさまざまな計算やタスクを実行できる組み込み関数と呼ばれる関数ライブラリが付属しています。
len 組み込み関数は、文字列の長さ (文字数) など、返されるオブジェクトの長さを示します。
str 組み込み関数。str はオブジェクトをパラメータとして受け取り、データ型 str の新しいオブジェクト (文字列) を返します。
int 組み込み関数。オブジェクトをパラメータとして受け取り、整数オブジェクト (整数) を返します。
float 組み込み関数はオブジェクトをパラメータとして受け取り、浮動小数点数オブジェクト (10 進数) を返します。
注記:
str、int、または float 関数に渡されるパラメーターは、文字列、整数、または浮動小数点数に変換可能である必要があります。
str 関数はほとんどのオブジェクトをパラメータとして受け入れますが、int 関数は内容が数値である文字列または浮動小数点数のみを受け入れることができます。 float 関数は、内容が数値である文字列または整数オブジェクトのみを受け入れることができます。
入力組み込み関数である携帯電話ユーザー情報は、文字列をパラメータとして受け取り、プログラムを使用してユーザーに表示します。
ユーザーがシェルに回答を入力すると、プログラムはその回答を変数に保存します。
関数の再利用: 関数は、値を計算して返すために使用できるだけでなく、使用したい関数をカプセル化することもできます。
関数は再利用できるため、関数を利用することでコード量を削減できます。
新しいプログラムの機能は以前のプログラムとまったく同じですが、必要に応じていつでも呼び出せる関数にカプセル化されているため、コード量が大幅に削減され、可読性が向上します。
スコープ: 変数の非常に重要な属性。
変数を定義する場合、そのスコープとは、プログラムのどの部分が変数に対して読み取りおよび書き込みができるかを指します。
変数のスコープは、プログラム内のどこで変数が定義されているかによって決まります。
関数またはクラスの外で変数を定義する
グローバル スコープ: プログラム内のどこでも読み書きできます。
グローバル変数: グローバル スコープを持つ変数。
関数またはクラス内で変数を定義する
ローカル スコープ: つまり、プログラムは、変数が定義されている関数内でのみ変数の読み取りと書き込みを行うことができます。
ローカル変数: ローカルスコープを持つ変数。
ローカル スコープでは少し注意が必要です。global キーワードは明示的に使用する必要があり、変更する変数は後でネゴシエートする必要があります。
例外処理: エラー条件のテスト、エラー発生時の例外の捕捉、およびそれらの処理方法の決定をサポートします。
try 句: 発生する可能性のあるエラーが含まれています。
例外句: エラーが発生した場合にのみ実行されるコードが含まれます。
注: try ステートメントで定義された変数を、Except ステートメント内で使用しないでください。
ドキュメント文字列 (docstring): 関数の機能を説明し、必要なパラメーターのタイプを記録するために使用されます。
第4章 コンテナ
方法
メソッドは、指定されたデータ型に密接に関連する関数です。
メソッドは関数と同様にコードを実行し、結果を返します。
関数とは異なります。メソッドはオブジェクトに対してのみ呼び出すことができます。
パラメータをメソッドに渡すことができます。
コンテナ1:リスト(リスト)
概念: リストは、オブジェクトを固定の順序で格納するコンテナーです。
表現方法:リストは角括弧([ ])で表現します。
リストの作成構文:
list 関数を使用して空のリストを作成します。
例: フルーツ = list( )
角括弧 ( [ ] ) を直接使用します。
例: 果物 = [ ]
リストにオブジェクトがある場合は、カンマで区切る必要があります。
例: 果物 = [「リンゴ」、「オレンジ」、「梨」]
リスト機能
リスト内の要素は順序付けされています
リスト内の要素の順序は、リスト内の要素の順序が並べ替えられない限り固定されます。
append メソッドを使用して新しい要素をリストに追加できますが、append メソッドは常に新しい要素をリストの末尾に追加します。
例: 果物 = ["リンゴ","オレンジ","梨"] フルーツ.append("バナナ") フルーツ.append("桃") プリント(フルーツ) >>['リンゴ'、'オレンジ'、'梨'、'バナナ'、'桃'】
リスト内の要素のインデックス。最初の要素のインデックスは 1 ではなく 0 です。
リストには任意のデータ型を保持できます。
リストは変更可能です。 コンテナーが変更可能な場合、コンテナーに対してオブジェクトを追加したり、コンテナーからオブジェクトを削除したりできます。
リスト内の要素を変更するには、そのインデックスを新しいオブジェクトに割り当てます。
例: 色 = ["青"、"緑"、"黄"] プリント(カラー) 色[2] = "赤" プリント(カラー) >>['青'、'緑'、'黄色'] >>['青'、'緑'、'赤']
Pop メソッドを使用して、リストから最後の要素を削除することもできます。
例: 色 = ["青"、"緑"、"黄"] プリント(カラー) item = color.pop( ) プリント(アイテム) プリント(カラー) >>['青'、'緑'、'黄色'] >>「黄色」 >>「青」、「緑」]
空のリストでは Pop メソッドを使用できません。
加算演算子を使用して 2 つのリストを結合できます
例: color1 = [「青」、「緑」、「黄」] color2 = [「オレンジ」、「ピンク」、「黒」] 色1 色2 >> [「青」、「緑」、「黄」、「オレンジ」、「ピンク」、「黒」]
キーワード in を使用して、要素がリスト内にあるかどうかを確認できます。
キーワードを使用すると、要素がリストにないかどうかをチェックしないようにできます。
関数 len を使用してリストのサイズ (要素数を含む) を取得します。
コンテナ 2: タプル
概念: タプルは、順序付けされたオブジェクトを格納するコンテナです。
表現方法: 祖先を表すには括弧を使用し、祖先内の要素を区切るにはカンマを使用する必要があります。
タプル構文を作成します。
タプル関数を使う
例: my_tuple = タプル( )
括弧を直接使用する
例: my_tuple = ( )
タプルに要素が 1 つしかない場合でも、要素の後にカンマを追加する必要があります。
タプルの特徴:
作成できるのは祖先のみであり、新しい要素を追加したり、既存の要素を変更したりすることはできません。
タプルの要素は、インデックスを参照することにより、リストと同じ方法で取得できます。
例: dys = ("1984","すばらしい新世界","華氏 452") ディス[2] >>『華氏451度』
キーワード in を使用すると、要素が祖先内にあるかどうかを確認できます。
先祖に要素が存在しないかどうかを確認するには、謝罪文にないキーワードを追加します。
タプルの目的: タプルは、決して変更されないことがわかっていて、他のプログラムに変更されたくない値を扱う場合に非常に便利です。
コンテナ 3: 辞書
コンセプト: 辞書は、オブジェクトを保存するためのもう 1 つの組み込みコンテナーです。これらは、キーと値のオブジェクトをリンクするために使用されます。 あるオブジェクトを別のオブジェクトにリンクすると (マッピングとも呼ばれます)、キーと値のペアが作成されます。 キーと値のペアをディクショナリに追加し、そのキーを使用してディクショナリをクエリして、対応する値を取得できます。ただし、値を使用してクエリを実行することはできません。
表現方法:辞書は中括弧({ })で表現します。
辞書を作成するための構文:
dict関数を使って作成する
例: my_dict = dict( )
中括弧 ({ }) を使用して直接作成します
例: my_dict = { }
キーと値のペアは、辞書の作成時に直接追加できます。上記のどちらの構文でも、キーと値をコロンで区切る必要があり、各キーと値のペアをカンマで区切る必要があります。
例: フルーツ = {"リンゴ":"赤","バナナ":"黄"}
辞書の機能:
辞書キーは必要ありません。
辞書は変更可能です。 辞書を作成した後、「[辞書名] [[キー]]」という構文を使用して新しいキーと値のペアを追加し、「[辞書名] [[キー]]」という構文を使用して値を検索できます。
例: 事実 = dict ( ) #キーと値のペアを追加する 事実 ["コード"] = "楽しい" print(事実["コード"]) #キーと値のペアを追加する 事実 ["ビル"] = "ゲイツ" #キーに対応する値を検索します print (事実["請求書"]) #キーと値のペアを追加する 事実["設立"] = 1776 #キーに対応する値を検索します print (事実 ["設立"])
ディクショナリ値は任意のオブジェクトにすることができます。ただし、辞書キーは不変でなければなりません。文字列またはタプルは辞書キーとして使用できますが、リストまたは辞書は使用できません。
キーワードを使用して、キーが辞書にあるかどうかを確認できますが、値が辞書にあるかどうかを確認するために使用することはできません。
例: bill = dict ({"ビル・ゲイツ":"慈善活動"}) print(請求書には「ビル・ゲイツ」)
キーワードの前にキーワードを追加して、キーが辞書にないかどうかを確認します。
キーワード del を使用して、辞書からキーと値のペアを削除します。
例: 本 = {"ドラキュラ":"ストーカー"、"1984":"オーウェル"、"裁判":"カフカ"} 印刷物(本) デルブックス[「裁判」] 印刷物(本)
辞書を使用するプログラムの例:
韻 = {"1":"楽しい", "2":"青"、 "3":「私」、 "4":"床"、 「5」:「ライブ」 } n = input("数値を入力してください:") n が韻を踏んでいる場合: 韻 = 韻[n] プリント(韻) それ以外: print("見つかりませんでした。")
コンテナーのネストされたコンテナー
コンテナはコンテナ内に保管できます。
用語集
メソッド: 指定されたデータ型に密接に関連する関数。
リスト: 順序付けされたオブジェクトを格納するコンテナー。
反復可能: オブジェクト内の各要素にループを使用してアクセスできる場合、オブジェクトは反復可能です。
反復可能なオブジェクト: 文字列、リスト、要素などの反復可能なオブジェクト。
インデックス: 反復可能なオブジェクト内の要素の位置を表す数値。
Mutable: コンテナーの内容は変更される可能性があります。
Immutable: コンテナの内容は変更できません。
Dictionary: オブジェクトを格納するための組み込みコンテナであり、キーと呼ばれるオブジェクトを値と呼ばれるオブジェクトにマッピングします。
キー: 辞書内の対応する値を検索するために使用されます。
value: キーにマップされたディクショナリ内の値。
マッピング: あるオブジェクトを別のオブジェクトにリンクすること。
キーと値のペア: キーは辞書内の値にマップされます。
第 5 章 文字列操作
5.1 三重引用符で囲まれた文字列
文字列が複数行にまたがる場合は、三重引用符を使用できます。
一重引用符または二重引用符を使用して複数行にまたがる文字列を定義すると、Python は構文エラーを報告します。
5.2 索引
リストやタプルと同様、文字列は反復可能です。
文字列の最初の文字のインデックスは 0 で、後続のインデックスは 1 ずつ増加します。
Python は、リスト内の要素を検索するための負のインデックスの使用もサポートしています。これは、反復可能なオブジェクト内の要素を右から左に検索するために使用できる検索年です (負の数である必要があります)。
5.3 文字列は不変です
タプルと同様、文字列は不変であり、文字列内の文字を変更することはできません。
これを変更したい場合は、新しい文字列を作成する必要があります。
例: ff = 「F.フィッツジェラルド」 ff = 「F・スコット・フィッツジェラルド」
5.4 文字列の連結
加算演算子を使用して、2 つ以上の文字列を結合すると、最初の文字列の文字と他の文字列の文字で構成される新しい文字列が得られます。
例: 「猫」「帽子の中」
5.5 文字列の乗算
乗算演算子を使用して、文字列と数値を乗算できます。
例: 「ソーヤー」※3 >>ソーヤーソーヤーソーヤー
5.6 大文字と小文字を変更する
文字列の upper メソッドを使用すると、文字列内の各文字を大文字に変更できます。
例: 「私たちはこれらの真実を保持しています...」.upper( ) >>「私たちはこれらの真実を保持しています...」
文字列の lower メソッドを使用すると、文字列内の各文字を小文字に変更できます。
例: 「そうなります。」. lower( ) >>「その通りです。」
文字列の Capitalize メソッドを使用して、文字列の最初の文字を大文字に変更できます。
例: 「4つのみがきと...」.capitalize( ) >>「4つの汚れと...」
5.7 フォーマット
format メソッドを使用して新しい文字列を作成すると、文字列内の「{ }」が渡された文字列に置き換えられます。
例: "ウィリアム { }".format("フォークナー") >>「ウィリアム・フォークナー」
format メソッドを使用して変数をパラメータとして渡すこともできます。
例: 最後 = 「フォークナー」 "ウィリアム { }".format(last) >>「ウィリアム・フォークナー」
中括弧 ({ }) は繰り返し使用できます。
例: 著者 = 「ウィリアム・フォークナー」 生まれ年 = "1897" 「{ } は { } で生まれました。」形式。(作成者 , year_born) >>「ウィリアムは1897年に生まれました。」
format メソッドは、ユーザー入力に基づいて文字列を作成する場合に便利です。
例: n1 = input("名詞を入力してください:") v = input("動詞を入力してください:") adj = input("adj を入力してください:") n2 = input("名詞を入力してください:") r = """{ } { } { } { } """.format(n1, v、 形容詞、 n2) プリント(r) >> 名詞を入力してください:
5.8 分割
Split メソッドを使用すると、文字列を 2 つ以上の文字列に分割できます。
文字列をsplitメソッドのパラメータとして渡し、それを使用して元の文字列を複数の文字列に分割する必要があります。
例: 「水たまりを飛び越えました。高さは 12 フィートでした!」.split(".") >>[「水たまりを飛び越えた」「高さは12フィートだった!」]
分割結果は、ピリオドより前のすべての文字で構成される文字列と、ピリオド以降のすべての文字で構成される文字列の 2 つの要素を含むリストです。
5.9 接続
join メソッドは、文字列の各文字の間に新しい文字を追加します。
例: first_three = "abc" 結果 = " ".join(first_three) 印刷(結果) >>「a b c」
join メソッドは、空の文字列または空白文字を含む文字列に対して呼び出して、文字列のリストを引数として渡すことで、これらの文字列を 1 つの文字列に連結できます。
例: 言葉 = [「その」、 "キツネ"、 「ジャンプした」、 "以上"、 「その」、 "フェンス"、 「。」] one = "".join(単語) ones = " ".join(単語) プリント(1枚) プリント(1枚) >>キツネは柵を飛び越えた。 >>キツネは柵を飛び越えました。
5.10 スペースを削除する
文字列の先頭と末尾にある空白文字を削除するには、strip メソッドを使用します。
例: s = 「その」 s = s.strip() 印刷する >>
5.11 交換
replace メソッドの場合、最初のパラメータは置換される文字列、2 番目のパラメータは置換に使用される文字列です。 2 番目の文字列を使用して、元の文字列内の最初の文字列と同じ内容をすべて置き換えることができます。
例: equ = 「すべての動物は平等です。」 equ = equ.replace("a","@") 印刷(等)
5.12 検索インデックス
Index メソッドを使用すると、文字列内で最初に出現した文字列のインデックスを取得できます。
検索したい文字をパラメータとして渡すと、index メソッドは文字列内で最初に出現した文字のインデックスを返すことができます。
例: print("動物".index("m")) >>3
一致する結果があるかどうかわからない場合は、次の例外処理メソッドを使用できます。
例: 果物 = [「梨」、「リンゴ」、「バナナ」、「桃」、「ブドウ」] n = input("果物の名前を入力してください:") #入力した果物名検索を探してみる 試す: print(フルーツ.インデックス(n)) を除外する: print("見つかりません") >>果物の名前を入力してください:バナナ >>2
キーワードで5.13
キーワード in は、文字列が別の文字列内にあるかどうかをチェックでき、返される結果は True または False です。
例: print(「帽子をかぶった猫」の「猫」)
in の前にキーワード not を追加して、文字列が別の文字列内にないかどうかを確認します。
5.14 文字列のエスケープ
文字列エスケープとは、Python で特別な意味を持つ文字の前に記号を追加して、この場合は記号が文字を表し、特別な意味を持たないことを Python に伝えることを指します。
Python ではバックスラッシュでエスケープします。
5.15 改行文字
改行を示すには、文字列に を追加します。
例: print("行1 行2 行3") >>1行目 >>2行目 >>3行目
5.16 スライス
スライスすると、反復可能オブジェクト内の要素のサブセットから新しい反復可能オブジェクトが作成されます。
例: fict = [「トルストイ」、 「カミュ」、 「オーウェル」、 「ハクスリー」、 「オースティン」] print(fict[0:3]) >>[「トルストイ」、「カミュ」、「オーウェル」]
構文: [反復可能なオブジェクト] [[開始インデックス:終了インデックス]]
開始インデックスは、スライスが開始されるインデックスです。
終了インデックスは終了インデックスの位置です。
注: 1. スライスには開始インデックス位置の要素が含まれますが、終了インデックス位置の要素は含まれません。 2. 開始インデックスが 0 の場合、開始インデックス位置は空白のままにすることができます。 3. 終了インデックスが反復可能オブジェクトの最後の要素のインデックスである場合は、終了インデックスの位置を空白のままにすることができます。 4. 開始インデックスと終了インデックスの両方が空白のままの場合、元の反復可能オブジェクトが返されます。
第6章 ループ
ループの意味: コード内で定義された条件が満たされるまで実行を停止しないコード。
6.1 for ループ
構文: 「for [変数名] in [反復可能なオブジェクト名]: [命令]」
[変数名]: 反復可能オブジェクトの各要素の値に割り当てられる予定の変数名です。
[命令]:各サイクルで実行されるコードです。
関数:
反復可能なオブジェクトを走査するループ。
例 (for ループを使用してリスト要素を反復処理する): ショー = ["GOT", 「ナルコス」、 「バイス」] ショーでのショー用: 印刷(表示) >>わかった >>ナルコス >>副
for ループを使用して、変更可能および反復可能なオブジェクトの要素を変更することもできます。
例: テレビ = [「GOT」、 「ナルコス」、 「バイス」] i = 0 テレビ番組用: 新しい = テレビ[i] 新しい = new.upper() テレビ[i] = 新しい i = 1 印刷物(テレビ) >>[「ゴット」、「ナルコス」、「バイス」]
for ループを使用して、変更可能な反復可能オブジェクト間でデータを渡すこともできます。
例: tv = ["GOT"、"ナルコス"、"バイス"] coms = ["逮捕","開発","友達","いつも晴れ"] all_shows = [] テレビ番組用: show = show.upper() all_shows.append(表示) コムでのショー用: show = show.upper() all_shows.append(表示) 印刷(すべての番組) >>[「GOT」、「ナルコス」、「バイス」、「逮捕」、「開発」、「フレンズ」、「いつも晴れ」]
6.2 レンジ機能
range 関数: 整数のシーケンスを作成する組み込み関数。
文法:
range 関数は、シーケンスの勢い番号と終了番号の 2 つのパラメーターを受け入れます。
range 関数によって返される整数シーケンスには、最初のパラメーターから 2 番目のパラメーターまでのすべての整数が含まれます (2 番目のパラメーターを除く)。
例 (range 関数を使用して一連の数値を作成し、それを反復処理します): range(1,11) の i の場合: 印刷(i) >>1 ... >>9 >>10
6.3 while ループ
while ループ: 式が True と評価される限りコードを実行するループです。
構文: "while [式]: [コードを実行]"
「[式]」は、ループが継続するかどうかを決定する式です。
「[実行コード]」はループが続く限り実行されるコードです。
無限ループ: 定義された while ループの式が常に True と評価される場合、ループの実行は決して停止しません。実行が決して停止しないループは、無限ループとも呼ばれます。
6.4 ブレーク文
Break ステートメント: ループを終了するために使用できます。
Python が Break ステートメントに遭遇すると、ループは終了します。
例: qs = [「あなたの名前は何ですか?」、 「あなたの好きな色は何ですか?」、 「あなたのクエストは何ですか?」 n = 0 True の場合: print("終了するには q を入力してください") a = 入力(qs[n]) a == "q" の場合: 壊す n = (n 1)%3 >>終了するには q を入力してください >>あなたの名前は何ですか?
ループを実行するたびに、プログラムはユーザーに qs リストからの質問をします。 このうち、n はインデックス変数です。各ループは式 (n 1)%3 の値を n に割り当てます。これにより、プログラムは qs リスト内の質問をループすることができます。
6.5 continue ステートメント
continue ステートメント: このステートメントをキーワード continue とともに使用すると、ループの現在の反復を終了し、次の反復に進むことができます。
例 1: #for ループと continue ステートメントを使用して、「1 から 5 までの 3 を除くすべての数字を出力する」を実現します。 範囲 (1,6) の i の場合: i == 3の場合: 続く 印刷(i) >>1 >>2 >>4 >>5
i の値が 3 に等しい場合、プログラムは continue ステートメントを実行しますが、break キーワードのようにループを完全に終了することはなく、実行されるべき他のコードをスキップして次の反復に進みます。 i が 3 に等しい場合、Python は 3 を出力する代わりに continue ステートメントを実行します。
例 2: #while ループと continue ステートメントを使用して、「1 から 5 までの 3 を除くすべての数字を出力する」を実現します。 i=1 i <= 5 の場合: i == 3の場合: i = 1 続く 印刷(i) i = 1 >>1 >>2 >>4 >>5
6.6 入れ子になったループ
ネストされたループ: ループはさまざまな方法で組み合わせることができます。
ループ内に別のループを追加したり、追加されたループ内にループを追加したりすることもできます。
ループ内にネストできるループの数に制限はありません
内側にループを含むループを外側ループと呼びます。
入れ子になったループは内部ループと呼ばれます
ネストされたループがある場合、外側のループは一度も走査されず、内側のループは反復可能オブジェクト内のすべての要素を走査します。
例: #2 つの for ループを使用して、1 つのリスト内のすべての数値をもう 1 つのリスト内のすべての数値に加算します。 リスト1 = [1,2,3,4] リスト2 = [5,6,7,8] 追加 = [ ] list1 の i の場合: list2 の j の場合: added.append(i j) 印刷(追加) >>[6、7、8、9、7、8、9、10、8、9、10、11、9、10、11、12]
最初のループはリスト list1 内の各整数を反復し、2 番目のループは独自の反復可能オブジェクト内の各整数を反復し、それを list1 の数値に加算し、その結果を追加されたリストに追加します。
6.7 用語集
ループ: コード内で定義された条件が満たされるまで実行を続けるコードのセクション。
トラバーサル: ループを使用して、反復可能なオブジェクト内の各要素にアクセスします。
for ループ: 文字列、リスト、タプル、辞書などの反復可能なオブジェクトを反復するために使用されるループ。
インデックス変数: 変数の値は、反復可能オブジェクト内のインデックスを表す数値です。
while ループ: 式の値が True である限り実行を続けるループ。
無限ループ: 決して終わることのないループ。
Break ステートメント: ループを終了するために使用される、break キーワードを含むステートメント。
continue ステートメント: continue キーワードを含むステートメント。ループの現在の反復を終了し、次の反復に入るために使用されます。
外側のループ: 内部にネストされたループを含むループ。
内部ループ: 別のループ内にネストされたループ。
第 7 章 モジュール
モジュールの意味:
プログラムの読み取りと確認を容易にするために、大きなプログラムは、モジュールと呼ばれる Python コードを含む複数のファイルに分割されます。
7.1 組み込みモジュールのインポート
インポート: モジュールを使用する前に、まずモジュールをインポートする必要があります。これは、Python にモジュールの取得場所を知らせるコードを作成することを意味します。
インポート構文: import[モジュール名]。
モジュールをインポートした後、その変数と関数を使用できるようになります。
組み込みモジュール: Python 言語が付属しており、多くの重要な機能が含まれています。
7.2 他のモジュールをインポートする
モジュールの作成
コンピューター上に新しいフォルダーを作成します。フォルダー内に新しい .py Python ファイルを作成し、その .py Python ファイルにコードを追加して、そのファイルをレポートします。
輸入(インポート) 同上
7.3 用語集
モジュール: コードを含む Python ファイルの別名。
組み込みモジュール: Python 言語に付属するモジュール。多くの重要な関数が含まれます。
インポート: 使用する予定のモジュールをインポートする場所を Python に指示するコードを作成します。
第 8 章 ドキュメント
8.1 ファイル書き込み操作
ファイルを操作する最初のステップは、Python の組み込みの open 関数を使用してファイルを開くことです。
open 関数には 2 つのパラメータがあります。
開くファイルへのパスを表す文字列。
ファイル パスは、コンピューター上のファイルの場所を指します。 たとえば、/Users/bob/st.txt は、st.txt ファイルのファイル パスです。 スラッシュで区切られた各単語はフォルダーの名前です。
ファイル パスにファイル名のみが含まれている場合 (スラッシュで区切られたフォルダーがない場合)、Python は現在実行中のプログラムが存在するディレクトリでファイルを検索します。
プログラムが異なるオペレーティング システムで実行される場合のエラーを回避するには、組み込みの OS モジュールを使用してファイル パスを作成する必要があります。
OSモジュールの例: OSをインポートする os.path.join("ユーザー","ボブ","st.txt") >>「ユーザー/bob/st.txt」
path 関数を使用してファイル パスを作成すると、障害のあるシステムでもファイル パスが適切に動作することが保証されます。
ファイルが開かれるモードを表します。
open 関数に渡されるパラメータ モードにより、開かれたファイルに対してどのような操作が実行されるかが決まります。
「r」はファイルを読み取り専用モードで開きます。
「w」はファイルを書き込み専用モードで開きます。 ファイルがすでに存在する場合、ファイルは上書きされます。 ファイルが存在しない場合は、新しいファイルが作成されます。
"w "ファイルを読み取りおよび書き込み可能なモードで開きます。 ファイルがすでに存在する場合、ファイルは上書きされます。 ファイルが存在しない場合は、新しいファイルが作成されます。
open 関数は、ファイル オブジェクトと呼ばれるオブジェクトを返します。このオブジェクトは、ファイルの読み取り/書き込みに使用できます。
ファイル オブジェクトの write メソッドを使用してファイルに書き込み、close メソッドでファイルを閉じることができます。
ファイルが open 関数を使用して開かれた場合は、close メソッドを使用して閉じる必要があります。
8.2 ファイルを自動的に閉じる
with ステートメントを使用してファイルを開く構文は次のとおりです。 "with open([ファイルパス]),[モード]) as [変数名]:[実行コード]"
[ファイルパス]はファイルの場所を表します
[モード] ファイルを開くモードを表します。
[変数名]はファイルオブジェクトに割り当てられた変数名を表します。
[実行コード]はファイルオブジェクト変数にアクセスするために必要なコードです。
例: open ("st.txt","w") を f として使用: f.write("Python からこんにちは!")
with ステートメント内にある限り、ファイル オブジェクトにアクセスできます。
8.3 ファイルの読み込み
ファイルを読み取りたい場合は、open 関数の 2 番目のパラメータとして「r」を渡すことができます。次に、ファイル オブジェクトの read メソッドを呼び出すと、ファイルのすべての行を含む反復可能なオブジェクトが返されます。
8.4 CSVファイル
CSV ファイルのサフィックスは .csv で、英語のカンマを使用してデータが区切られます (CSV はカンマ区切り値の英語の略語です)。
CSV ファイルは、Excel などのレポート ソフトウェアを管理する必要があるプログラマーによってよく使用されます。
CSV ファイル内のカンマ区切りの各データはレポート内のセルを表し、各行はレポート行を表します。
区切り文字とは、CSVファイル内でデータを区切るときに使用するカンマや縦棒「|」などの記号です。
8.5 用語集
読み取り: ファイルの内容にアクセスします。
書き込み: ファイル内のデータを追加または変更します。
ファイル パス: ファイルが保存されているコンピュータ上の場所。
with ステートメント: Python がステートメントを終了するときに操作を自動的に実行する複合ステートメント。
ファイル オブジェクト: ファイルの読み取りと書き込みに使用できるオブジェクト。
CSV ファイル: .csv 接尾辞が付いたファイル。カンマを使用してデータを区切ります。レポートを管理するプログラムでよく使用されます。
区切り文字: CSV ファイル内のデータを区切るために使用される記号 (カンマなど)。
パート 2 オブジェクト指向プログラミングの概要
第9章 プログラミングパラダイム
プログラミングパラダイム(プログラムパラダイム)、つまりプログラミングスタイル。
9.1 ステータス
異なるプログラミング パラダイム間の基本的な違いの 1 つは、状態の扱いです。
状態は、プログラム実行時の内部変数の値です。
グローバル状態は、プログラムの実行時の内部グローバル変数の値です。
9.2 手続き型プログラミング
手続き型プログラミング: このプログラミング スタイルでは、問題を解決するために一連の補助金を作成する必要があり、各ステップでプログラムの状態が変化します。
手続き型プログラミングでは、データをグローバル変数に保存し、関数を通じて処理します。
プログラムの状態はグローバル変数に保存されるため、プログラムが大きくなると問題が発生する可能性があります。
グローバル変数は複数の関数で使用される可能性があり、グローバル変数が変更された場所を記録するのは困難です。プログラムのデータ精度に重大な損害を与える可能性があります。
プログラムが複雑になるにつれて、グローバル変数の数は徐々に増加し、また、プログラムは継続的に新しい関数を追加したり、グローバル変数を変更したりする必要があるため、プログラムはすぐに保守できなくなります。
プロシージャはプログラミングの副作用であり、その 1 つはグローバル変数の状態を変更することです。
9.3 関数型プログラミング
関数型プログラミング: 世界最小の汎用プログラミング言語。
関数型プログラミングは、グローバル状態を排除することで手続き型プログラミングで生じる問題を解決します。
関数型プログラマは、グローバル状態を適用または変更しない関数に依存します。使用する唯一の状態は、関数に渡される引数です。
メリットとデメリット
利点: グローバル状態によって引き起こされるすべてのエラーが排除されます (関数型プログラミングにはグローバル状態は存在しません)。
短所: 一部の問題は、状態を通して概念化する方が簡単です。
9.4 オブジェクト指向プログラミング
オブジェクト指向プログラミング パラダイムも、グローバル状態を排除することで手続き型プログラミングによって引き起こされる問題を解決しますが、関数を使用する代わりにオブジェクトを使用して状態を保存します。
クラスは、相互に対話できる一連のオブジェクトを定義します。
クラスは、プログラマーが類似したオブジェクトを分類およびグループ化するための手段です。
すべてのオブジェクトはクラスのインスタンスです。
クラスが定義されると、クラスのすべてのインスタンスは類似します。つまり、それらはすべてクラスで定義された属性を持ちますが、各インスタンスの特定の属性値は異なります。
Python では、クラスはヘッダーと本体を含む複合ステートメントです。
構文: class [クラス名]: [コード本体]。
[クラス名]はクラスの名前です。
規則: Python のクラス名はすべて大文字で始まり、キャメルケースの名前が使用されます。
キャメルケース命名法: つまり、クラス名が複数の単語で構成される場合、各単語の最初の文字を大文字にする必要があります (アンダースコアで区切るのではなく、LikeThis など) (関数の命名規則)。
[コード本体]は定義したクラスの固有コードです。
クラス内のコードの本体は、単一のステートメントにすることも、メソッドと呼ばれる複合ステートメントにすることもできます。
メソッドは関数に似ていますが、クラス内で定義されるため、クラスによって作成されたオブジェクトに対してのみ呼び出すことができます。
メソッド名は関数の命名規則に従い、すべて小文字でアンダースコアで区切られます。
メソッドの定義方法と関数の定義方法の違いは次のとおりです。
メソッドはクラス内で定義する必要があります。
少なくとも 1 つの引数を受け入れる必要があります (特殊な場合を除く)。
慣例により、メソッドの最初のパラメータには常に self という名前が付けられます。
メソッドを作成するときは、少なくとも 1 つのパラメーターを定義する必要があります。これは、オブジェクトのメソッドを呼び出すと、Python が呼び出しメソッドのオブジェクトをパラメーターとして自動的に渡すためです。
9.5 用語集
プログラミング パラダイム: プログラミング スタイル。
ステータス: 実行中のプログラム内の変数の値。
グローバル状態: プログラム実行時のプログラム内のグローバル変数の値。
手続き型プログラミング: このプログラミング スタイルでは、問題を解決するための一連のステップを記述する必要があり、各ステップでプログラムの状態が変化します。
関数型プログラミング: 関数型プログラミングは、関数転送を通じてグローバル状態を排除し、手続き型プログラミングの問題を解決します。
副作用: グローバル変数の値が変更されます。
オブジェクト指向: 相互に対話できるオブジェクトを定義するプログラミング パラダイム。
クラス: プログラマーが類似したオブジェクトを分類およびグループ化するための手段。
メソッド: 関数に似ていますが、クラス内で定義され、クラスによって作成されたオブジェクトに対してのみ呼び出すことができます。
インスタンス: すべてのオブジェクトはクラスのインスタンスです。クラスの各インスタンスは、クラスの他のインスタンスと同じデータ型を持ちます。
インスタンス変数: オブジェクトに属する変数。
マジック メソッド: オブジェクトの初期化などの特別な状況で Python によって使用されるメソッド。
クラスのインスタンス化: クラスを使用して新しいオブジェクトを作成します。
第 10 章 オブジェクト指向プログラミングの 4 つの柱
コンセプト。
オブジェクト指向プログラミングには 4 つの主要な概念があります。
カプセル化
カプセル化には 2 つの概念が含まれます。
オブジェクト指向プログラミングにおける最初の概念は、オブジェクトが変数 (状態) とメソッド (状態を変更したり、状態に関係する計算を実行するために使用される) を 1 か所 (オブジェクト自体) に収集するというものです。
2 番目の概念は、クライアント コード (つまり、クラス外のコード) による直接アクセスを避けるために、クラスの内部データを非表示にすることを指します。
抽象的な
抽象化とは、「何かの多くの特徴を取り除き、その最も基本的な性質だけを残す」プロセスを指します。オブジェクト指向プログラミングでは、クラスを使用してオブジェクトをモデル化するときに抽象化手法が使用されます。
ポリモーフィズム
ポリモーフィズムとは、「さまざまな基本形式 (データ型) に関連するインターフェイスを提供する機能」を指します。インターフェイスとは、関数またはメソッドを指します。
継承する
プログラミングにおける継承は、遺伝的継承に似ています。クラスを作成すると、そのクラスは別のクラスからメソッドと変数を継承することもできます。
継承したクラスが親クラス(親クラス)となる
継承されたクラスは子クラスと呼ばれます
サブクラスが親クラスからメソッドを継承する場合、継承されたメソッドと同じ名前の新しいメソッドを定義することで、親クラスのメソッドをオーバーライドできます。親クラスから継承されたメソッドの実装を変更するサブクラスの機能は、メソッドのオーバーライドと呼ばれます。
構成: 組み合わせ手法を通じて、1 つのオブジェクトを別のオブジェクトの変数として保存し、「独自の」関係をモデル化できます。
用語集
オブジェクト指向プログラミングの 4 つの柱: カプセル化、抽象化、ポリモーフィズム、継承。
継承: 遺伝的継承の概要では、子供は目の色などの特徴を親から継承します。同様に、クラスを作成すると、別のクラスからメソッドと変数を継承できます。
親クラス: 継承されるクラス。
サブクラス: 親クラスから継承するクラス。
メソッドのオーバーライド: サブクラスは、親クラスから継承されたメソッドを実装する機能を変更します。
ポリモーフィズム: さまざまな基本形式 (データ型) に関連するインターフェイスを提供する機能を指します。
抽象化: 何かの多くの機能を取り除き、最も基本的な性質だけを残すプロセスを指します。
クライアント コード: 該当するオブジェクトのクラス外のコード。
カプセル化: カプセル化には 2 つの概念が含まれます。最初の概念は、オブジェクト指向プログラミングのオブジェクトが変数 (状態) とメソッド (状態を変更したり、状態に関係する計算を実行するために使用される) を 1 か所 (オブジェクト自体) に収集するというものです。 2 番目の概念は、クライアント コードによる直接アクセスからクラスの内部データを隠すことを指します。
組み合わせ: 組み合わせ手法により、1 つのオブジェクトが別のオブジェクトの変数として保存され、「独自の」関係をモデル化できます。
第 11 章 徹底したオブジェクト指向プログラミング
11.1 クラス変数とインスタンス変数
Python では、クラスはオブジェクトです。 Python のすべてのクラスは、type クラスのインスタンス オブジェクトです。
クラスには 2 種類の変数があります。
クラス変数
クラス変数は、クラス自体によって作成されたオブジェクトだけでなく、Python がクラス定義ごとに作成するオブジェクトにも属します。
クラス変数は通常の変数と同じ方法で定義され (ただし、クラス内で定義する必要があります)、クラス オブジェクトを通じて、またはクラスを使用して作成されたオブジェクトを通じてアクセスできます。
アクセス方法はインスタンス変数と同じです(変数名の前にself.を付けます)。
クラス変数を使用すると、グローバル変数を使用せずに、クラスのすべてのインスタンス間でデータを共有できます。
インスタンス変数
インスタンス変数は、self.[変数名]=[変数値]という構文で定義されます。
11.2は
2 つのオブジェクトが同じオブジェクトである場合、キーワードは True を返し、それ以外の場合は False を返します。
is キーワードを使用して、変数が None であるかどうかを確認できます。