Python の基本から UnitTest フレームワーク - Python の基本構文

1.python環境設定

Python インタプリタ: 書かれたコードをバイナリに変換します。

pycharm: Python の IDE (統合開発環境) の 1 つで、コードの作成とコードの実行/デバッグに使用されます。

vscode、IDEA、メモ帳...

2. 文法使用法

(1)打印输出:print()

(2)输入数据:input()

(3)コメント:単一行 (#; 複数行を選択し、ショートカット キー Ctrl + / を押します)、複数行 ( 3 組の二重引用符または 3 組の一重引用符)

(4)cmd ターミナルは Python コードを実行します:Python コード ファイルの名前

(5)変数:変数名 = データ値 (命名規則: 文字、数字、アンダースコアで構成する必要があり、次の文字で始めることはできません)数値、キーワードは使用されません)

(6)データ型:数値型: 整数型 (int)、浮動小数点型 (float)、ブール型 (bool) ;数値以外の型: 文字列 (str)、リスト (list)、タプル (tuple)、辞書 (dict);型 (変数): 取得できる変数の型あ>

(7)フォーマットされた出力:%d: 整数型; %f: 浮動小数点型; %s: 文字列 (任意の型を使用可能) )

# 小数点以下のデフォルト表示は 6 桁です。表示する小数点以下の桁数を指定する場合は、%.nf と n を特定の整数に置き換える必要があります。つまり、小数点以下の桁数は保持されます< /span>
print('私の名前は {}、年齢は {}、身長は {:.3f} m、学生番号は {:06d}、この試験の合格率は {}%'.format (名前、年齢、身長、stu_num、num))
print('私の名前は {}、年齢は {}、身長は {} m、学生番号は {}、この試験の合格率は {}%'.format(名前,年齢, 身長,stu_num,num))
# String.format()

です
{num}%')
print(f'私の名前は {name}、年齢は {age}、身長は {height} m、学生番号は {stu_num}、この試験の合格率は
# print('私の名前は xx、年齢は xx、身長は xx m、学生番号は xx、この試験の合格率は xx%です')
例: print('私の名前は %s、年齢は %d、身長は %f m' % (名前、年齢、身長))

# 文字列内に改行を出力したい \n (エスケープ文字)
# 特定の試験の合格率は 90% です。書式で % を表示する必要がある場合は、次の 2 つの %% を記述する必要があります: print('特定の試験の合格率は %d%% & #39; % num)
# %0nd n は、整数の合計数を示す特定の整数に置き換える必要があります

(8)算術演算子:優先度: 最初にカウントされる人、次にカウントされる人 (優先度がわからない場合は、 use () ): () > ** > * / // % > + -

(9)比較演算子:比較演算子の結果は bool 型になります

(10)論理演算子:and (そして、1 つの false は false)、or (または、1 つの true は true)、not (違います)

(11)の場合

if 判定条件:
    条件が true (true) であると書き込み、コードを実行します
    条件が true (true) であると書き込み、コードを実行します
インデントなしで top 形式で記述されたコードは if とは関係がなく、条件が true かどうかに関係なく実行されます。
# 1. がキーワードの場合、その後の判定条件との間にスペースが必要
# 2. 判定条件の後には必ずコロンが必要です
# 3. コロンの後に Enter キーを押すと、コードをインデントする必要があります。pycharm では、通常は 4 つのスペースまたはタブ キーで自動的にインデントされます。
# 4. ifコードの下のインデント内に記述されたコードはすべてif文のコードブロックに属し、判定条件がTrueの場合に実行されます
# 5. if コード ブロック内のコードは実行されるか、どのコードも実行されません
# 6. if コード ブロックが終了した後、コードはトップ形式 (インデントなし) で記述され、 if に関係のないコードであることを示す必要があります。

(12)そうでない場合

条件が true の場合は、別のことを実行し (条件が true でない場合)、別のことを実行します

if 判定条件:
    条件が true (true) であると書き込み、コードを実行します
    条件が true (true) であると書き込み、コードを実行します
それ以外の場合:
    書かれた条件が true ではない (false) 場合、実行されるコード
    書かれた条件が true ではない (false) 場合、実行されたコード
# 1. else はキーワードであり、その後にコロンが必要です
# 2. コロンの後に入力します。これもインデントする必要があります。
# 3. else コードの下のインデント内のコンテンツは else コード ブロックに属します
# 4. if および else コード ブロックは、そのうち 1 つだけが実行されます
# 5. else は if
と組み合わせて使用​​する必要があります
# 6. if else の間の上部のボックスに他のコンテンツを記述することはできません (elif については言及しないでください)

(13)if elif else

if 判定条件 1:
    判定条件1成立、実行コード
elif 判定条件2: # 判定条件1が成立しない場合のみ判定条件2を判定する
    条件 2 が成立したときに実行されるコード
それ以外:
    上記の条件がいずれも満たされない場合、実行されたコード
# 1. elif もキーワードであり、判定条件との間にはスペースが必要、判定条件の後にはコロンが必要
# 2. コロンの後の復帰はインデントする必要があります。このインデント内のコードは elif コード ブロックを表します
# 3. if 判定では、多くの elif が存在する可能性があります。
# 4. if の条件が成立しない場合のみ elif の条件を判定する
# 5. if で複数の elif がある場合、1 つの条件が true である限り、後続のすべての elif は判定されません
# 6. elif else 構造の場合、if と同じインデントは elif と else のみで、other の場合は判定構造が終了したことを意味します

if 判定条件 1:
    実行されたコード
if 判定条件 2:
    実行されたコード
if 判定条件 3:
    実行されたコード
# 複数の if の構造で、それぞれの if が判定され、それらの間には関連性はありません

(14)嵌套の場合

if のネストは、if(elif else) 内で別の if をネストすることを意味します。
使用シナリオ: 判定条件間には漸進的な関係があります (2 番目の条件は、最初の条件が満たされた場合にのみ判定されます)

if 判定条件 1:
    判定条件1成立、実行コード
    if 判定条件 2:
        判定条件2成立、実行コード
    それ以外の場合:
        判定条件2が成立しない場合、実行されるコード
それ以外:
    判定条件1が成立しない場合、 実行されるコード

(15)while循环

プログラム開発 (コードの作成) には、次の 3 つの主要なプロセス (3 つの主要な構造) があります。
1. シーケンス、コードは上から下へ、すべて実行されます
2. 分岐、判定ステートメント、およびコードが選択的に実行されます
3. ループ、コードの特定の部分を繰り返し実行します
ループの機能は、指定されたコードを繰り返し実行することです

1. ループ (カウンター) の初期条件を設定します
2. ループ書き込みの判定条件
while 判定条件:
    # 3. 繰り返し実行する必要があるコード
    # 4. ループ (カウンター) の初期条件を変更する

#無限ループ
無限ループ: 通常、コードを誤って作成した人が原因で発生するバグです。コードは継続的に実行され続けます。
無限ループ: コードを作成した人が意図的にコードの無制限の実行を許可し、コードは実行され続けます。
無限ループの使用シナリオ: ループを作成するとき、ループが何回実行されるかはわかりません
無限ループを使用すると、通常、ループに if 判定が追加されます。if 条件が成立したら、キーワード Break を使用してループを終了します。
True の場合:
    繰り返し実行されるコード # は、
    を超える可能性があります。
    if 判定条件:
        Break # ループを終了します。コードの実行で Break が発生すると、ループは実行されなくなります。
    繰り返し実行されるコード # は、 if の下に配置できます。

(16)for循环

for ループを使用すると、指定したコードを繰り返し実行 (ループ) することもできます
for ループはコンテナ内のデータを走査できます ( 
    トラバーサル: コンテナからデータを 1 つずつ取り出します
    コンテナ: 単純にボックスとして理解でき、大量のデータ (文字列 str、リスト list、タプル タプル、辞書 dict) を保存できます。
)
for ループはトラバーサルのために呼び出すこともできます

コンテナ内の変数名の場合:
    繰り返し実行されるコード
# 1. for と in は両方ともキーワードです
# 2. コンテナー内にあるデータの量とループが何回実行されるか (データ 0、実行回数 0 回、...)
# 3. ループするたびに、コンテナ内のデータを 1 つ取り出して、in キーワードの前の変数に保存します

(17)for を指定された回数だけループします

範囲(n) 内の変数:
    繰り返し実行されるコード
# 1. range() は Python の関数です。使用すると、n を除く [0, n) の間の整数を生成できます。それぞれに n 個の数値があるため、このループは n 回ループします。
# 2. for ループをループさせたい回数だけ n を記述するだけです
# 3. 変数の値も各サイクルで [0, n) から取り出されます、最初に取得されるときは 0、最後に取得されるときは n-1

range() 変形
range(a, b) 内の変数の場合:
    重複したコード 
# range(a, b) は、[a, b) (b を除く) の間の整数を生成するために使用されます。

(18)中断して続行

break と continue は Python の 2 つのキーワードであり、ループ内でのみ使用できます
Break: ループを終了します。つまり、コードの実行で Break が発生すると、ループは実行されなくなり、すぐに終了します。
continue: このループをスキップします。つまり、コード実行で continue が発生すると、このループ内の残りのコードは実行されず、次のループに進みます。

(19)切片

スライス: 文字列内の複数の文字を取得できます (複数の文字の添字は通常の算術文字です)
構文:
文字列[開始:終了:ステップ]
start は開始位置の添字、end は終了位置の添字 (この位置の文字は取得できないことに注意してください) step はステップ サイズ、等差数列の差、取得された隣接する文字の添字の差です。 、デフォルトは 1 です。書き込む必要はありません
例: [1:5:1] # 1 2 3 4 
[1:5:2] # 1 3 
[1:5:3] # 1 4
[1:5:4] # 1 

(20)字符串

# 文字列置換メソッド replace
String.replace(old_str, new_str, count) # 文字列内の old_str を new_str に置き換えます
- old_str: 置き換えられたコンテンツ
- new_str: 置換するコンテンツ
- count: 置換の数。通常は記述されません。デフォルトでは、すべてを置換します。
- 戻り値: 置換後の完全な文字列、注: 元の文字列は変更されていません

#String 分割 分割
String.split(sep, maxsplit) # sep に従って文字列を分割 (分割) します
- sep、文字列の分割に使用されるもの。デフォルトは空白文字 (スペース、改行\n、タブ キー\t) です。
- max_split、分割の数。通常は書き込まれません。すべてを分割します。
- 戻り値: 文字列を複数の部分に分割し、リストに格納します
- 注: sep が記述されていない場合、分割数を指定したい場合は、次のように使用する必要があります。
String.split(maxsplit=n) # n は回数です

#String リンク結合
String.join(list) # 括弧内の内容は主にリストですが、他のコンテナも含めることができます
# 機能: リスト内の 2 つの隣接するデータの間に文字列を挿入して、新しい文字列を形成します
- リスト内のデータはカンマで区切られています
- 注: リスト内のデータは文字列である必要があります。文字列でない場合、 エラーが報告されます

(23) のリスト

リスト リストは、最も一般的に使用されるコンテナ (データ型) です
複数のデータをカンマで区切ってリストに保存できます
あらゆる種類のデータをリストに保存できます

出現回数をカウントするには、 count() メソッドを使用します
List.count(data) # データの出現数を返す

#最後にデータを追加します
List.append(data) #リストの最後にデータを追加します
戻り値: 戻り値なし (キーワード、空)。通常、返されたコンテンツの保存に変数は使用されません。
追加したリストを表示したい場合は、リストを印刷する必要があります

#データを追加する添字の位置を指定します
List.insert(subscript, data) # 指定された添字位置にデータを追加します。指定された添字位置にデータがある場合、元のデータは後方に移動されます
戻り値: 戻り値なし (キーワード、空)。一般に、返されたコンテンツの保存に変数は使用されなくなりました。
追加したリストを表示したい場合は、リストを印刷する必要があります

#リストのマージ
List 1.extend(List 2) # リスト 2 のすべてのデータをリスト 1 の末尾に 1 つずつ追加します
戻り値: 戻り値なし (キーワード、空)。一般に、返されたコンテンツの保存に変数は使用されなくなりました。
追加したリストを表示したい場合は、リストを印刷する必要があります

#変更
リスト[添え字] = データ

#削除
List.pop(subscript) #指定された添字位置に該当するデータを削除します
1. 添字が記述されていない場合、デフォルトで最後のデータが削除されます (一般的に使用されます)
2. 既存の添え字を書き込み、その添え字の位置に対応するデータを削除します
Return: 削除されたデータが返されました

List.remove(data value) #データ値に基づいて削除
戻り値: なし
注: 削除するデータが存在しない場合は、エラーが報告されます

List.clear() #データをクリア

#リスト内の反転と反転:  
1. List [::-1] # スライス方法を使用すると、新しいリストが取得され、元のリストは変更されません
2. List.reverse() # 元のリストを直接変更し、None を返します

#リストのコピー
コピー方法を使用する
変数 = list.copy()

#リストの並べ替え
List.sort() # 小さいものから大きいものへ昇順に並べ替えます
List.sort(reverse=True) # 大きいものから小さいものへの降順で並べ替えます

(24)元组

タプル: タプル、タプルの特性はリストと非常に似ています
違い:
1. タプル内のデータ内容は変更できませんが、リスト内のデータ内容は変更できます
2. タプルは () を使用し、リストは [] を使用します。

(25)字典

1. 辞書辞書。辞書内のデータはキー (キー) 値 (値) のペアで構成されます (キーはデータの名前を表し、値は特定のデータを表します)< a i=1>
2. 辞書では、一連のキーと値のペアが 1 つのデータとなり、複数のキーと値のペアはカンマで区切られます。
変数 = {キー: 値、キー: 値、...}
3. 辞書内のキーは一意であり、繰り返すことはできません。値は任意のデータにすることができます
4. 辞書内のキーは通常文字列であり、リストではなく数値を使用することもできます

おすすめ

転載: blog.csdn.net/weixin_61275790/article/details/134491484