Ⅰ.変数
0x00 変数とは何ですか?
変数とは、変化する数値のことです。
変数は物を入れる箱、
変数はデータを格納する入れ物です。変数名を通じてデータを取得しますが、データを変更することもできます。
インターネット上にはこれを言っているチュートリアルがたくさんありますが、これは間違いです。Python では、変数はボックスではなく、ラベルが付けられた値です。
例:
a = 10
b = a
考えてみましょう。Python では何が起こるでしょうか?
写真で表すとこんな感じになります
意外なことに、Python の変数に格納されるのは、C\C++ のように格納された値ではなく、データが格納されているアドレスです。
信じられない人もいるかもしれませんが、ここで完全に信じてもらうための例を示します。
id関数とは何ですか?
ヘルプ機能を使用してヘルプを取得します
参考訳:
有关模块内置函数id的帮助:
id(obj,/)
返回对象的标识。
这保证在同时存在的对象中是唯一的。
(CPython使用对象的内存地址。)
少し話が逸れてしまいましたが、引き続き本題に戻ります。
0x01 変数の割り当て
Python は動的変数です 動的変数とは何ですか?
つまり、変数の属性は変更できますが、変数宣言はありません。
Python での変数の割り当てには = 演算子を使用できます。構文は次のとおりです。
变量名 = 值
例を見てみましょう
n = 666 # int类型
f1 = .0 # float类型,等价于0.0
f2 = 0. # 等价于0.0
s = "623" # 字符串类型
b = True # 布尔类型
0x02 命名規則
Python ではどんな名前でも受け入れられるわけではありません
ルールは次のとおりです。
- 変数名には文字、数字、アンダースコアのみを含めることができます。
- 変数名は文字またはアンダースコアで始める必要があります。
- 変数名に、if、while、for などの Python キーワードを使用することはできません。
n@ = 10 # 错误:使用了特殊符号
变量 = 666 # 正确:Python允许使用中文作为变量名
1n = 888 # 错误:使用了数字作为开头
_n = 999 # 正确:下划线可以作为开头
0x03 命名規則
一般に、プログラミングには次の 4 つの命名規則があります。
ハンガリー語の命名法
ハンガリー語の命名法はマイクロソフトのハンガリー人によって発明された初期の仕様であり、IDE がまだ非常に遅れていた時代の産物です。当時はコードが多かったので、変数の型を決めるのが非常に面倒でした。今と違ってIDEがプロンプトを出すので、このような命名規則が作られました。今ではあまり使っている人はいないかもしれませんね。 . 非常に体系的だが簡単な命名規則。
この命名規則では、接頭辞の文字が変数タイプの略語である必要があり、残りの部分は英語または変数の英語略語で、単語の最初の文字が大文字である必要があります。
のように:
inumber = 666
sName = "666"
キャメルケースの命名法
キャメル ケースの命名法は、スモール キャメル ケースの命名法とも呼ばれます (したがって、当然、大きなキャメル ケースの命名法もあります...)。
この命名規則では、最初の単語の最初の文字を小文字にし、後続の他の単語の最初の文字を大文字にする必要がありますが、シンプルで大雑把ですが、学習と使用が簡単です。
myAge = 18
myName = ""
パスカルの命名法
パスカル命名法。キャメルケース命名法とも呼ばれます。
キャメルケースとの最大の違いは、各単語の最初の文字が大文字になることです。
MyAge = 18
MyName = ""
名称に下線を引く
アンダーラインの命名法は、キャメルケースの命名法ほど高く評価されていませんが、それでもハイライトです。これは特にマクロ定義と定数で使用され、すべての大文字の単語を区切るためにアンダースコアが使用されます。
命名規則も非常に単純で、単語をアンダースコアで接続する必要があります。
my_age = 18
my_name = ""
しかし、命名規則を使用することにこだわるのであれば、それが間違いなく役立つことには疑いの余地がありません。
- 重要じゃない
0x04 アンパック操作
Python には糖衣構文があり、その構文は次のとおりです。
变量A, 变量B, ... = 值1, 值2, ... # 等价于 变量A = 值1
# 变量B = 值2
これが開梱作業です。
なぜ糖衣構文なのか?
C++ にはアンパック操作がないため、変数を交換するには
auto Temp = a;
a = b;
b = Temp;
しかし、Python では 1 行のコードしか必要としません。
a, b = b, a
あなたがハンサムかどうかを尋ねるだけです
解凍操作にはさまざまな用途があり、後で頻繁に使用します。
0x05 呼び出し変数
コード内で変数名を直接使用できます。
a = 10
print(a) # 输出: 10
0x06 変数の削除
プログラム内の一部の変数は不要になりましたが、依然としてメモリを占有します。
何をするか?
もちろん彼を削除してください!
Python で変数を削除するには、del キーワードを使用します。
構文は次のとおりです。
del 变量名 # 如果有多个变量需要删除用,号隔开即可
のように:
a = 10
del a
print(a)
削除後は変数が使用できないことがわかります。
0x07 変数スコープ
Python では、変数のスコープは、その変数にアクセスできるコードのブロックを指します。Python には 3 種類の変数スコープがあります。
- ローカル変数: 関数内で定義され、関数内でのみアクセスできます。
- グローバル変数: 関数の外部で定義され、プログラム全体からアクセスできます。
- ネストされたスコープ変数: 関数内の関数で定義され、この関数およびネストされた関数内でのみアクセスできます。
ローカル変数とグローバル変数を使用した例を次に示します。
python
x = 5 # 全局变量
def my_func():
x = 10 # 局部变量
print("x = ", x)
my_func()
print("x = ", x)
上記の例では、関数 my_func() 内の変数 x はローカル変数です。関数が呼び出されると、Python は関数内に x という新しい変数を作成し、その値を 10 に設定します。この変数は、関数が返されるときに破棄されます。関数の外では、変数 x は依然としてグローバル変数であり、その値は 5 のままです。
これらのコードを理解する必要はありません。概念を理解するだけで十分です。
Ⅱ. オペレーター
0x00 演算子とは何ですか?
この章ではPythonの演算子を中心に説明します。4 +5 = 9 という簡単な例を考えてみましょう。この例では、4 と 5 はオペランドと呼ばれ、「+」記号は演算子です。
Python 言語で一般的に使用される演算子:
- 算術演算子
- 比較 (関係) 演算子
- 代入演算子
- 論理演算子
次に、Python 演算子を 1 つずつ学習していきます。
0x01 Python 算術演算子
Python の二項算術演算子のリストは次のとおりです。
オペレーター | 文法 | 効果 |
+ | a + b | aとbを追加します |
- | a - b | aからbを引く |
* | a * b | aとbを掛けます |
/ | a / b | aをbで割る |
% | a%b |
または、a を b で割った余りを計算します。 |
// | a // b | a を b で割った整数部分を取得します |
** | a ** b | a の b 乗を求める |
二項算術演算子の構文は次のように構成できます。
值1 运算符 值2
a = 21
b = 10
c = 0
c = a + b
print("1 - c 的值为:", c)
c = a - b
print("2 - c 的值为:", c)
c = a * b
print("3 - c 的值为:", c)
c = a / b
print("4 - c 的值为:", c)
c = a % b
print("5 - c 的值为:", c)
# 修改变量 a 、b 、c
a = 2
b = 3
c = a**b
print("6 - c 的值为:", c)
a = 10
b = 5
c = a//b
print("7 - c 的值为:", c)
0x02 Python 比較演算子
オペレーター | 効果 |
== | Equals - オブジェクトが等しいかどうか |
!= | 等しくない - オブジェクトが等しくないかどうか |
> | より大きい - 左の値が右の値より大きいかどうか |
< | 未満 - 左側の値が右側の値より小さいかどうか |
>= | 以上 - 左辺値が右辺値以上であるかどうか |
<= | 以下 - 左側の値が右側の値以下かどうか |
構文は次のとおりです。
左值 比较符 右值
ここではこれ以上のネタバレはやめておきます。if 判断については時期が来たら話します
0x03 論理演算子
論理演算子のリストは次のとおりです。
論理演算子 | 効果 |
ない | True の場合は False を返し、False の場合は True を返します |
そして | AND - 左辺値と右辺値の両方が True の場合は True を返し、それ以外の場合は False を返します |
または | または - 左辺値と右辺値のいずれかが True の場合は True を返し、それ以外の場合は No を返します。 |
構文は次のとおりです。
左值 逻辑运算符 右值
ここではネタバレはありません。if 判定については後ほど説明します。
0x04 代入演算子
リストは次のとおりです。
代入演算子 | 効果 |
= | それについて話す必要はありません |
+= | a = a+b と同等 |
-= | a = ab と同等 |
... |
残りは類推によって推定されます。
Ⅲ.型変換
0x00変換型関数
インターネットから
0x01 変換型の役割
入力関数の戻り値がstrで他の型が必要な場合は変換関数が便利です。
0x02 入力された数値の合計を計算します
まず 2 つの変数を定義します
a = input("请输入a的值:")
b = input("请输入b的值:")
次に、それらをint型に変換します
a, b = int(a), int(b)
それらを再度加算します。
c = a + b
cの値を出力します
print("a + b =", c)
完全なコード:
操作結果:
(文字化けは関係ありません)