Pythonで関数の一部を解析してみる
この記事の内容は Python のいくつかの関数の分析に関するものであり、一定の参考価値があります。必要な友人が参照することができます。お役に立てれば幸いです。
Python では、変数には型がありません。変数はオブジェクトへの参照であり、型はオブジェクトに属します。
変数は本質的にはプレースホルダーです。変数には通常、小文字で名前が付けられます。
1: 構文
def 関数名 (パラメーター リスト):
関数本体
(関数名は通常、小文字、単一の下線、数字などの組み合わせを使用します)
2: よく使用される関数の種類
(1) パラメーターを持つ関数: パラメーターは正しい順序で関数に渡される必要があります
(2) デフォルトのパラメーター関数: Ifパラメータが渡されない場合は、デフォルトのパラメータが使用されます。デフォルトのパラメータが最後にない場合は、エラーが報告されます。
(3) キーワード パラメーター: 関数呼び出しでは、キーワード パラメーターを使用して、渡されたパラメーター値を決定します。
(4) 不定長のパラメーター: 関数は、最初に宣言されたときよりも多くのパラメーターを処理できます。
①*args のすべての変数は、すべての名前のない変数を格納するタプルにパックされます。
②**args のすべての変数は、辞書にパックされます。
( 5) 関数を宣言するとき、パラメータ内のアスタリスク * は単独で使用でき、* の後のパラメータはキーワードとともに渡す必要があります
(6) 匿名関数、ラムダ関数を使用して匿名関数を作成します
①lambda は単なる式であり、関数本体は def よりもはるかに単純です
②ラムダの本体はコード ブロックではなく式です
③関数には独自の名前空間があり、独自のパラメーター リストの外部やパラメーターにアクセスすることはできません。グローバル名前空間。
3: Python 関数のパラメータの受け渡し:
不変型:
C に似た値の受け渡し (int、string、tuple など)。
fun(a) のように、a の値のみが渡され、a オブジェクト自体には影響しません。
たとえば、 a inside fun (a) の値を変更すると、コピーされた別のオブジェクトのみが変更され、 a 自体には影響しません。
変数の型:
c 参照転送と同様、次のようなリストや辞書として。たとえば、実際には fun (la) に la が渡されますが、変更後は fun の外側の la にも影響が及びます、不変オブジェクトの受け渡しと可変オブジェクトの受け渡しと言うべきです
4: 変数スコープ
Python には一般に 4 種類のスコープがあります。
L (ローカル) ローカル スコープ ドメイン
E (囲み) クロージャ関数の外側の関数内G (グローバル) グローバル スコープ
B (組み込み) 組み込みスコープ
検索ルールは L->gt ;E->G->B
Python ではモジュール、クラス、関数のみ(def, lambda) は新しいスコープを導入します。他のコード ブロック (if/elif/else/、try/excel、for/while など) は新しいスコープを導入しません。つまり、これらのステートメントで定義された変数は、外部からもアクセス可能です。
5: グローバル変数とローカル変数
関数内で定義された変数にはローカル スコープがあり、関数の外で定義された変数にはグローバル スコープがあります。
内部スコープが外部スコープの変数を変更する場合は、グローバル キーワードと非ローカル キーワードが使用されます。
(1) グローバルは、グローバル変数の値を変更するために使用されます。
(2) 非ローカルは、ネストされたスコープ (外側のスコープ、外側の非グローバル スコープ) 内の変数を変更するために必要です。キーワードは
6: 関数呼び出しのヒント (重要)
関数名.__doc__関数のヘルプ ドキュメントを取得する
関数名は別の関数の参照として使用できます。関数の仮パラメータ
複数の戻り値はタプルの形式で返されます
内部関数、グローバル変数は変更せずにアクセスできます。 !
内部関数。グローバル変数を同じ名前で変更すると、Python はそれがローカル変数であると認識します。 !
七: 命名について
(1) ファイル名: すべて小文字、アンダースコアも使用可能
(2) 関数名: 小文字、小さいキャメルケース原則
(3) 変数名: すべて小文字、アンダースコアで接続
詳細な命名規則については、PEP8
8: いくつかの特別な関数を参照してください
mapred
フィルター
# --------------------------------------------------------------------------# # 函数的语法及调用 # --------------------------------------------------------------------------# def func(func_name, number): # 函数的定义 """打印输入的任何字符串""" print(func_name, number) return 'Done' func('func_1', 'faith') # 函数的调用 # --------------------------------------------------------------------------# # 不定长参数函数,封装成元组 # --------------------------------------------------------------------------# def func_1(func_name, *number): """ 打印输入的任何字符串 """ print(type(number)) print(func_name, number) return 'Done' func_1('func_1', 1, 2, 2, 3) def func_2(func_name, number): # print(type(number)) print(func_name, number) return 'Done' func_2('func_2', (1, 2, 2, 3)) def func_3(func_name, *number): print(func_name) print(number[3]) # 根据元组index中一部分变量 print(number[4]) return 'Done' func_3('func_3', 1, 2, 2, 3, 'aaa', 'abc') # get out question: the number of index isn't known in most case! # --------------------------------------------------------------------------# # 不定长参数函数,封装成字典 # --------------------------------------------------------------------------# def func_4(func_name, **number): # 可变参数必须在函数参数的最后 # print(type(number)) print(func_name, number) return 'Done' func_4('func_4', name='faith') # --------------------------------------------------------------------------# # 命名关键字函数 # --------------------------------------------------------------------------# def func_5(a, x, c, *, china, uk): print('func_5:', china, uk) print(a, x, c) func_5(1, 2, 3, china='bJ', uk='rs') # 调用时必须加上关键字 # func_5(1, 2, 3, 'bJ', 'rs') # --------------------------------------------------------------------------# # 函数应用之-递归 # --------------------------------------------------------------------------# def my_sum(i): if i < 0: raise ValueError # 抛出错误 elif i <= 1: return i else: return i + my_sum(i - 1) print(my_sum(1.4)) # --------------------------------------------------------------------------# # 传递不可变对象实例 # --------------------------------------------------------------------------# def change_int(a): a = 10 b = 2 change_int(b) print(b) # 结果是2 # --------------------------------------------------------------------------# # 传递可变对象实例 # --------------------------------------------------------------------------# def change_me(mylist): mylist.append([1, 2, 3, 4]) print("函数内取值: ", mylist) return myList = [10, 20, 30] change_me(myList) print("函数外取值: ", myList) # --------------------------------------------------------------------------# # 函数内修改全局变量的值 # --------------------------------------------------------------------------# money = 200 # 模块里面的全局变量 def add_money(): global money money = money + 1 return money print("修改后的值money = ", add_money()) # --------------------------------------------------------------------------# # 匿名函数 # --------------------------------------------------------------------------# sum_1 = lambda arg1, arg2: arg1 + arg2 # 调用sum函数 print("相加后的值为 : ", sum_1(10, 20)) print("相加后的值为 : ", sum_1(20, 20)) # 单独编译一个文件时候输出结果 if __name__ == "__main__": pass
以上がPythonで関数の一部を解析してみるの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Python 関数入門: abs 関数の使い方と例 1. abs 関数の使い方の概要 Python では、abs 関数は、指定された値の絶対値を計算するために使用される組み込み関数です。数値引数を受け入れ、その数値の絶対値を返すことができます。 abs 関数の基本構文は次のとおりです。 abs(x) ここで、x は絶対値を計算する数値パラメータであり、整数または浮動小数点数を指定できます。 2. abs 関数の例 以下に、いくつかの具体的な例を通して abs 関数の使用法を示します。 例 1: 計算

Python 関数の紹介: isinstance 関数の使用法と例 Python は、プログラミングをより便利かつ効率的にするための多くの組み込み関数を提供する強力なプログラミング言語です。非常に便利な組み込み関数の 1 つは isinstance() 関数です。この記事では、isinstance関数の使い方と例を紹介し、具体的なコード例を紹介します。 isinstance() 関数は、オブジェクトが指定されたクラスまたは型のインスタンスであるかどうかを判断するために使用されます。この関数の構文は次のとおりです

Python プログラミング言語の普及に伴い、開発者はプログラムを作成する過程で「ハードコーディングされたエラー」の問題に遭遇することがよくあります。いわゆる「ハードコーディングエラー」とは、特定の数値、文字列、その他のデータを定数や変数として定義せずにコードに直接書き込むことを指します。このアプローチには、可読性が低い、保守、変更、テストが難しいなどの多くの問題があり、またエラーの可能性も高くなります。この記事では、Python 関数のハードコーディングされたエラーの問題を解決する方法について説明します。 1. 何が難しいのか

Python 関数の紹介: dir 関数の使用法と例 Python は、オープンソースの高レベルのインタープリタ型プログラミング言語です。 Web アプリケーション、デスクトップ アプリケーション、ゲームなど、さまざまな種類のアプリケーションの開発に使用できます。 Python には、プログラマーが効率的な Python コードを迅速に作成するのに役立つ、多数の組み込み関数とモジュールが用意されています。その中でも、 dir 関数は非常に便利な組み込み関数であり、プログラマがオブジェクト、モジュール、またはクラスのプロパティとメソッドを表示するのに役立ちます。

Python 関数の紹介: フィルター関数の役割と例 Python は、多くの組み込み関数を提供する強力なプログラミング言語であり、その 1 つがフィルター関数です。 filter 関数は、リスト内の要素をフィルターし、指定された条件を満たす要素で構成される新しいリストを返すために使用されます。この記事では、フィルター関数の機能を紹介し、読者がフィルター関数の使用法と可能性を理解できるようにいくつかの例を示します。フィルター関数の構文は次のとおりです。

Python 関数の紹介: globals 関数の関数と使用例 Python は、多くの組み込み関数を提供する強力なプログラミング言語であり、その中には globals() 関数があります。この記事では、globals()関数の機能と使用例を、具体的なコード例とともに紹介します。 1. globals 関数の関数 globals() 関数は、現在のモジュールのグローバル変数の辞書を返す組み込み関数です。グローバル変数を含む辞書を返します。

Python は、シンプルで理解しやすい構文、豊富な標準ライブラリ、オープンソース コミュニティのサポートを備えた人気の高水準プログラミング言語であり、オブジェクト指向プログラミング、関数型プログラミングなどの複数のプログラミング パラダイムもサポートしています。特に、Python はデータ処理、機械学習、科学技術計算などの分野で広く使用されています。ただし、Python にはマルチスレッドまたはマルチプロセス プログラミングにおいていくつかの問題もあります。その 1 つは同時実行性の不安です。この記事では、Python 関数の同時実行性の問題を次の側面から解決する方法を紹介します。

Python 関数入門: range 関数の紹介と例 Python は、学習が容易で豊富な組み込み関数ライブラリを備え、さまざまな分野で広く使用されている高級プログラミング言語です。その中でも、range関数はPythonでよく使われる組み込み関数の一つです。この記事では、range関数の機能と使い方を詳しく紹介し、例を通してその具体的な応用例を示します。 range 関数は、整数シーケンスを生成するために使用される関数です。開始値 (開始値) である 3 つのパラメーターを受け入れます。
