検索

Pythonの基本的なポイント

Jul 18, 2017 pm 01:32 PM
python全体的な状況移行

関数の基本的な概要

関数を学ぶ前に、私は常に次のことを行ってきました: プロセス指向プログラミング、つまり、ビジネス ロジックに基づいて関数を上から下まで実装します。 ある関数のコードが問題ないかどうかを考えることができます。は複数の場所で使用されています。一度書くだけですか?このときコードはどのように定義すればよいでしょうか。まず次のケースを観察してください:

True の場合:
CPU 使用率 > 90%:
#メールリマインダーを送信
メールサーバーに接続
メールを送信
‐ ‐‐‐‐‐‐‐ ‐ � � � � � � � � �� 使用済みスペース> 90%:
# メールリマインダーを送信
メールボックスサーバーに接続
メールを送信
接続を閉じる

メモリ占有量 & gt; 80%:
# メールリマインダーを送信
メールボックスサーバーに接続メールを送信する 抽出された公開例:

def 電子メールを送信 (コンテンツ)
#電子メール リマインダーを送信
メールボックス サーバーに接続

電子メールを送信

接続を閉じる

while True:

CPU 使用率 > 90% の場合:
電子メールを送信(' CPU アラーム ')

ハードディスク使用量 & gt; 90%:
メールを送信 (' ハードディスク アラーム ')
メモリ占有 & gt; 80% :
メールを送信 (' メモリ アラーム ')

上記の 2 つのタイプのうち、2 番目の実装は、最初の実装よりも再利用可能で読みやすいはずです。実際、1 か所で定義し、複数の場所で呼び出すことができます。これが関数型プログラミングです

関数型プログラミングの概念:
プログラムを開発する際、特定のコードを複数回使用する必要がありますが、記述効率とコードの再利用を向上させるために、独立した機能を持つコードブロックが小さなモジュールに編成されます。 . 関数の定義と関数です

Call


Define function

定義された関数の形式は以下の通りです:

def function name(): Code demo:
# 情報を出力する機能を完了できる関数を定義する
def printInfo():
print '----------------------- --------------------'
print 'Life is Hard 短いですが、私は Python を使っています'

print '-------------- ----------------------------------'





関数の定義には主に次の点があります。

• def:関数を表すキーワード• 関数名:関数の名前、呼び出し時に関数名に従って関数が呼び出されます

• 関数本体:関数内で一連のロジックが実行されます。はこの関数の機能内容です。

• パラメータ: 関数本体のデータを提供します
• 戻り値: 関数が実行されると、呼び出し元にデータを返すことができます。
関数を呼び出す
関数を定義した後、これらのコードを実行したい場合は、それを呼び出す必要があります (定義するときは注意してください)。関数の内容は実行されません)
関数の呼び出しは関数名()を通じて完了することができます
demo: # 関数が定義された後、関数は自動的に実行されません。 printInfo( )

関数のドキュメントの説明


例:

>>> def test(a,b):
... " 2 つの数値の合計を計算します" ... print("%d"%(a+b))... >>> >>> test(11,22)
33
次のコードを実行します
>> help(test)

=================== ============= ================

モジュール __main__:

test(a, b)
の関数テストに関するヘルプが使用されます2つの数字の合計を完成させます

(END)

==============================================

関数のパラメータ - 戻り値

パラメータ付きの関数を定義します 例は次のとおりです:

def addnum(a, b):
c = a +b
print c
パラメータを指定して関数を呼び出す 例として上記の add2num(a, b) 関数を呼び出します:

def addnum(a, b):
c = a+b
print c

add2num(11, 22) #パラメータ付きの関数を呼び出すときは、括弧内のデータを渡す必要があります

簡単なまとめ: • 小さい場合定義 パラメータを受け取るために使用される括弧内のパラメータは、「仮パラメータ」と呼ばれます
• 関数に渡すために使用される、呼び出されたときの括弧内のパラメータは「実際のパラメータ」と呼ばれます

ps:後で説明します関数のパラメータを詳しく説明した別のブログです


戻り値のある関数 次の例:

def add2num(a, b):
c = a+b
Return c
保存した関数の戻り値は以下の通りです:
#Define function


def add2num(a, b):
Return a+b

#Call Function,ついでに関数を保存しておきます 戻り値
result = add2num(100,98)

#resultはadd2numの戻り値を保存しているので次に使えます
print result Result :

19 8


Pythonでは複数の値を返すことができます >>> def divid(a, b):
... shang = a//b
... yushu = a%b
... 返シャン、ユシュ
...
>>> sh, yu = divid(5, 2)
>>> sh
>>> yu
1

本質はタプルを使うことです

関数はパラメータの有無と戻り値の有無で組み合わせ可能です 全部で4種類あります

• パラメータなし、リターンなし。値
• パラメータなし、戻り値なし
• パラメータあり、戻り値なし
• パラメータあり、戻り値あり

gt;パラメータなし、戻り値なしの関数

このタイプの関数はパラメータを受け取ることができず、戻り値がありません通常の状況では、印刷プロンプト ライトは Function に似ています。このタイプの関数を使用します。 パラメータと戻り値のない関数です。通常、このタイプの関数はパラメータを受け取ることはできませんが、特定のデータを返すことができます。データ収集などの場合は、このタイプの関数を使用します
< ;3>パラメータ付きで戻り値のない関数
このタイプの関数は、パラメータを受け取ることができますが、データを返すことはできません。通常、このタイプの関数は設定時に使用されます。結果を必要としない特定の変数のデータ
このタイプの関数は、パラメータを受け取るだけでなく、特定のデータを返すこともできます。一般に、データ処理が必要で結果が必要なアプリケーションにはこれを使用します。関数の種類

簡単なまとめ


• 関数はパラメータや戻り値の有無によって組み合わせ可能です • 関数を定義する際は、実際の機能要件に基づいて設計されるため、記述される関数の種類は開発者によって異なります

• 関数がリターンするかどうか データを返すことができるのはリターンのみであるため、値はリターンがあるかどうかによって異なります

• 開発では、関数は値を返す必要があるかどうかのニーズに応じて設計されることがよくあります
•関数には複数の return ステートメントが存在する可能性がありますが、1 つの return ステートメントが実行される限り、この関数の呼び出しは完了したことになります
• プログラム内で関数名を繰り返さないようにしてください。が繰り返されると、後のもので前のものが上書きされます (注: 変数名を繰り返さないでください。変数名も上書きされます)



関数のネスト

def testB():
print('----testB start----')
print('testB関数で実行されるコードは以下の通りです…(略)…' )
print('---- testB end----')


def testA():

print('---- testA start----')

testB()

print('---- testA end----')

Call

testA()


Result:
---- testA start-- --
---- testB start----
testB 関数実行のコードです...(省略されました)...
---- testB end----
--- -- testA end----

簡単なまとめ:
関数が別の関数を呼び出す、これはいわゆる関数のネストされた呼び出しです
関数Aの場合、それは別の関数 B が呼び出された場合、関数 B 内のすべてのタスクが最初に実行され、関数 A が最後に実行された位置に戻ります

関数のネストの場合:

1. 3 つを見つける関数を書きます数値の合計
2. 3つの数値の平均を求める関数を書く


# 3つの数値の合計を求める
def sum3Number(a,b,c):
a+b+cを返す # 戻り値の後には数値または式を続けることができます

# 3つの数値の平均を完成させます
def Average3Number(a,b,c):

# なぜなら、sum3Number関数は既に 3 つの数値の合計を完了しているので、呼び出すだけで済みます
#つまり、受け取った 3 つの数値を実パラメータとして渡すことができます
sumResult = sum3Number(a,b, c)
aveResult = sumResult/3.0
returnaveresult

#関数を呼び出して3つの数字の平均を完了する

rsult=平均3number(11,2,55)

print( "平均is is %d "%result)infuncation functionのlocal変数とグローバル変数

local変数の例:[8]:def text1():

.. ..: print("text1----%d" %a)

...: In [9]: def text2(): ...: a = 400 ...: print(" text2-----%d" %a)

...:

[10]内: text1() text1---- 200

修正後

text1----300

In [ 11]: text2()
text2-----400


概要

• ローカル変数とは関数内で定義された変数です

• 関数ごとに定義できるローカル変数は同じ名前ですが、それぞれが違うものを使用します 影響はありません
• ローカル変数の役割は、データを一時的に保存するために、関数内で保存用の変数を定義する必要があります

という役割です。

グローバル変数




概念: 変数であれば、関数でも他の関数でも使用できます このような変数がグローバル変数です


例:
#グローバル変数を定義します
[12]の場合: a = 250

[13]の場合: def text1():

...: print("----text1----%d" %a) 。 ..: [14] 内: def text2(): (...: Print ("---- text2 ---- %d" %a)

...:

in [15] : テキスト 1 () ---- テキスト 1 ---- 250

[16]の場合:text2()
----text2----250

ローカル変数とグローバル変数が同じ名前の場合:
[23]の場合:a = 250 # [24]のグローバル変数:def text1():...##intous in in [24]:def text1():

| )

...:
#ローカル変数 ...: A = 666
...: Print (" ---- text1 ------------ %d " %a)
.. .:
In [25]: def text2(): ...: print("----text2----%d" %a)
...:

In [26] ]: text1 ()

----text1----521

----text1----666

[27]内: text2()

----text2----250


In [28] ]:


まとめ:

• 関数の外で定義された変数はグローバル変数と呼ばれます

• グローバル変数はすべての関数でアクセスできます • グローバル変数の名前が同じ場合ローカル変数の名前、その後ローカル変数が使用されます、ローカルスネークの圧倒を避けるためのちょっとしたトリック

関数内のグローバル変数を変更します:

In [31]: a = 250

In [32]: def text1(): ..: a = 520...: print("----text1----%d" %a)
[33] 内:

[33] 内: def text2():
%a..:
global
a
...: a = 666
...: print("----text2----%d" %a)
.. .:
In [34]: # 関数は呼び出されません


In [35]: print(a)
250
In [36]: # Call text1


In [37]: text1( )
----text1-- --520
In [38]: # もう一度印刷 ---->


In [39]: print(a)
250
In [40]: # 値が変更されていないことが判明しました


In [41]:
# Call text2
In [42]: text2()
----text2----666
In [43] : # a


をもう一度印刷する In [44 ]: print(a)
666
In [45]: # 値が変更されました


概要:

• でグローバル変数を変更した場合関数の場合、宣言に global を使用する必要があります。それ以外の場合は、(パラメータが渡されない場合)同じ変数のオブジェクトが関数内で再定義されるのと同等です

- 変数型のグローバル変数 - と不変型のグローバル変数 - 関数内で変更

ps: 変数型と不変型の概念を詳しく説明するブログが後ほどあります

例: -------> Immutable type:

In [46]: a = 6 In [47]: def Demon(): a += 1 print(a)...:

In [48]: demo()

エラー情報:
- --------------------------------------------- ----- ------------------------
UnboundLocalError トレースバック(最後に呼び出した最新の呼び出し)
( )

----> 1 デモ ()

3 print (a)

4

UnboundLocalError: 代入前にローカル変数 'a' が参照されました

------------------------------------- -------- --------------------------------------
注: 明らかに変更できません

- ------>変数の型:

[49] では: a = [1,]

[50] では:

[50] では: def demo():
...:a .append(2)
print(a)
[52]:[1、2]:logue me&&â関数が実行されたとき、および外部に出力されたときにも変更されます。

概要:

○ 関数内でグローバル変数を変更する場合は、global を使用して宣言する必要があります。そうしないとエラーが発生します
○ グローバル変数の本質は、global を使用せずに関数内で変更することはできません

グローバル変数を宣言します


は、グローバル変数のポインティングを変更できませんは、

がグローバル変数を新しいデータ

にポイントできないことを意味します。
immutable型のグローバル変数の場合、が指すデータは変更できないので、globalを使わないとグローバル変数を変更することはできません。 変数型のグローバル変数は指すデータが変更可能
なので、globalを使用しない場合もグローバル変数を変更することができます。

以上がPythonの基本的なポイントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
Pythonと時間:勉強時間を最大限に活用するPythonと時間:勉強時間を最大限に活用するApr 14, 2025 am 12:02 AM

限られた時間でPythonの学習効率を最大化するには、PythonのDateTime、時間、およびスケジュールモジュールを使用できます。 1. DateTimeモジュールは、学習時間を記録および計画するために使用されます。 2。時間モジュールは、勉強と休息の時間を設定するのに役立ちます。 3.スケジュールモジュールは、毎週の学習タスクを自動的に配置します。

Python:ゲーム、GUIなどPython:ゲーム、GUIなどApr 13, 2025 am 12:14 AM

PythonはゲームとGUI開発に優れています。 1)ゲーム開発は、2Dゲームの作成に適した図面、オーディオ、その他の機能を提供し、Pygameを使用します。 2)GUI開発は、TKINTERまたはPYQTを選択できます。 TKINTERはシンプルで使いやすく、PYQTは豊富な機能を備えており、専門能力開発に適しています。

Python vs. C:比較されたアプリケーションとユースケースPython vs. C:比較されたアプリケーションとユースケースApr 12, 2025 am 12:01 AM

Pythonは、データサイエンス、Web開発、自動化タスクに適していますが、Cはシステムプログラミング、ゲーム開発、組み込みシステムに適しています。 Pythonは、そのシンプルさと強力なエコシステムで知られていますが、Cは高性能および基礎となる制御機能で知られています。

2時間のPython計画:現実的なアプローチ2時間のPython計画:現実的なアプローチApr 11, 2025 am 12:04 AM

2時間以内にPythonの基本的なプログラミングの概念とスキルを学ぶことができます。 1.変数とデータ型、2。マスターコントロールフロー(条件付きステートメントとループ)、3。機能の定義と使用を理解する4。

Python:主要なアプリケーションの調査Python:主要なアプリケーションの調査Apr 10, 2025 am 09:41 AM

Pythonは、Web開発、データサイエンス、機械学習、自動化、スクリプトの分野で広く使用されています。 1)Web開発では、DjangoおよびFlask Frameworksが開発プロセスを簡素化します。 2)データサイエンスと機械学習の分野では、Numpy、Pandas、Scikit-Learn、Tensorflowライブラリが強力なサポートを提供します。 3)自動化とスクリプトの観点から、Pythonは自動テストやシステム管理などのタスクに適しています。

2時間でどのくらいのPythonを学ぶことができますか?2時間でどのくらいのPythonを学ぶことができますか?Apr 09, 2025 pm 04:33 PM

2時間以内にPythonの基本を学ぶことができます。 1。変数とデータ型を学習します。2。ステートメントやループの場合などのマスター制御構造、3。関数の定義と使用を理解します。これらは、簡単なPythonプログラムの作成を開始するのに役立ちます。

プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は?プロジェクトの基本と問題駆動型の方法で10時間以内にコンピューター初心者プログラミングの基本を教える方法は?Apr 02, 2025 am 07:18 AM

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

中間の読書にどこでもfiddlerを使用するときにブラウザによって検出されないようにするにはどうすればよいですか?中間の読書にどこでもfiddlerを使用するときにブラウザによって検出されないようにするにはどうすればよいですか?Apr 02, 2025 am 07:15 AM

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター