[解決済み] Pythonの関数では、渡すパラメータの種類はどのように扱われるのですか?
質問
間違っていなければ、Pythonで関数を作成すると、次のようになります。
def my_func(param1, param2):
# stuff
しかし、実際にはそれらのパラメーターの型は与えられていません。また、私の記憶では、Pythonは強く型付けされた言語であり、そのため、Pythonは関数作成者の期待とは異なる型のパラメータを渡すことを許さないように思われるのです。 しかし、Pythonは関数のユーザが適切な型を渡していることをどのようにして知るのでしょうか?関数が実際にパラメータを使用すると仮定して、それが間違った型であった場合、プログラムはただ死ぬのでしょうか?型を指定する必要があるのでしょうか?
どのように解決するのですか?
Pythonは強型付けされており、すべてのオブジェクトは があります。 型、すべてのオブジェクト 知っている のオブジェクトであるかのように、ある型のオブジェクトを偶然または意図的に使用することはできません。 異なる の型があり、オブジェクトに対するすべての基本操作はその型に委ねられる。
とは何の関係もありません。 名前 . A 名称 Pythonでは、quot;have a type"はありません:名前が定義されると、その名前は オブジェクト で、その オブジェクト は型を持っています (しかし、それは実際には 名前 名前は名前です)。
Pythonの名前は、(すべてではありませんが、ほとんどのプログラミング言語で)異なる時に異なるオブジェクトを参照することが完全に可能で、一度X型のオブジェクトを参照したなら、その後は永遠にX型の他のオブジェクトのみを参照するように制約されるような名前はありません。 名前 は強い型付けの概念には含まれません。 スタティック 型付け(ここで、名前 する 静的な、つまりコンパイル時の方法で制約を受ける)このように用語を誤用することがあります。
関連
-
pyCaret効率化乗算器 オープンソース ローコード Python機械学習ツール
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonスクリプトのプロファイリングはどのように行うのですか?
-
[解決済み] print関数の出力をフラッシュする(pythonの出力をバッファリング解除する)にはどうすればよいですか?
-
[解決済み] Pythonでパスから拡張子なしでファイル名を取得する方法は?
-
[解決済み] Pythonの@propertyデコレーターはどのように機能するのでしょうか?
-
[解決済み] Pythonの関数が例外を投げるかどうかをテストするにはどうすればよいですか?
-
[解決済み] C言語で関数をパラメータとして渡すにはどうすればよいですか?
-
[解決済み】Pythonで2つの変数の論理xorを取得するにはどうすればいいですか?
-
[解決済み】Pythonは強型付けされていますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
pythonを使ったオフィス自動化コード例
-
[解決済み】numpyの配列連結。"ValueError:すべての入力配列は同じ次元数でなければならない"
-
[解決済み】TypeError: 系列を <class 'float'> に変換することができません。
-
[解決済み】「SyntaxError.Syntax」は何ですか?Missing parentheses in call to 'print'」はPythonでどういう意味ですか?
-
[解決済み】TypeErrorを取得しました。エントリを持つ子テーブルの後に親テーブルを追加しようとすると、 __init__() missing 1 required positional argument: 'on_delete'
-
[解決済み】syntaxError: 'continue' がループ内で適切に使用されていない
-
[解決済み】NameError: 名前 'self' が定義されていません。
-
[解決済み】cアンダースコア式`c_`は、具体的に何をするのですか?
-
[解決済み】ValueError: xとyは同じサイズでなければならない
-
[解決済み】type()とisinstance()の違いは何ですか?)