Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonの第一級市民


第一級市民は、他の仲間の実体を促進するすべての操作のサポートを可能にする実体です。

これらのエンティティはよく使用されます:引数を渡すとき、関数から値を返すとき、条件付きの変更、値の割り当て。

この記事では、Python3.x以前の第一級市民の実装と使用法について説明します。また、すべてのエンティティが第一級市民であるというタグを取得するものを学習します。

これらの市民には、関数とともに変数が含まれています。

まず、第一級市民の一部であるデータ型について理解しましょう

  • 整数
  • フローティングタイプ
  • 複素数
  • 文字列

上記の4つのタイプすべてに、Python3.xの第一級市民であるというタグが付けられています。またはそれ以前。

#Declaration of an integer
print("hello world")
int_inp=int(input())
print("This is a First class Citizen of "+str(type(int_inp)))
#Declaration of floating type
float_inp=float(input())
print("This is a First class Citizen of "+str(type(float_inp)))
#Declaration of complex numbers
complex_inp=complex(input())
print("This is a First class Citizen of "+str(type(complex_inp)))
#Declaration of Strings
str_inp=input()
print("This is a First class Citizen of "+str(type(str_inp)))

入力

2
23.4
4+7j
tutorialspoint

出力

This is a First class Citizen of <class 'int'>
This is a First class Citizen of <class 'float'>
This is a First class Citizen of <class 'complex'>
This is a First class Citizen of <class 'str'>

それでは、第一級市民と呼ばれるいくつかの機能を見てみましょう

ファーストクラスのオブジェクトは、Python言語で一律に処理されます。すべてのエンティティがオブジェクト指向であるということは、いつでも参照および逆参照できるデフォルトのオブジェクトを指します。ストレージは、データ構造または制御構造を使用して実行できます。

次に、Pythonがファーストクラスの関数をサポートしているかどうかを確認します。したがって、どの言語も、関数をファーストクラスオブジェクトとして扱う場合、ファーストクラス関数をサポートすると言われています。

# Python program
# functions being be treated as objects
def comp_name(text):
   return text.isupper()
print(comp_name("TUTORIALSPOINT"))
new_name = comp_name #referencing a function with the object
print(new_name("TutorialsPoint"))

出力

True
False

# Python program
# functions being passed as arguments to other functions
def new_inp(text):
   return text.upper()
def old_inp(text):
   return text.lower()
def display(func):
   # storing the function in a normal variable
   code = func("Love Coding, Learn everything on Tutorials Point")
   print (code)
display(new_inp) #directly referenced by passing functions as arguments.
display(old_inp)

出力

LOVE CODING, LEARN EVERYTHING ON TUTORIALS POINT
love coding, learn everything on tutorials point

ここでは、Python関数がオブジェクトを使用して参照でき、別の関数に引数として渡すこともできることがはっきりとわかります。これは、Pythonでは関数が第一級市民であり、オブジェクトエンティティを使用して参照および参照解除できることを明確に示しています。

>

結論

この記事では、標準のPythonライブラリに含まれているmax関数とmin関数の実装について学びました。


  1. Pythonでの継承

    この記事では、Python3.xでの継承と拡張クラスについて学習します。またはそれ以前。 継承は実際の関係をうまく表し、再利用性を提供し、推移性をサポートします。開発時間が短縮され、メンテナンスが容易になり、拡張も容易になります。 継承は大きく5つのタイプに分類されます- シングル 複数 階層的 マルチレベル ハイブリッド 上の図に示されているように、継承とは、実際に親クラスのオブジェクトを作成せずに、他のクラスの機能にアクセスしようとするプロセスです。 ここでは、単一の階層型継承の実装について学習します。 単一継承 例 # parent class class Studen

  2. Pythonのクラスメソッドと静的メソッド

    Pythonのクラスメソッドはメソッドであり、クラスにバインドされていますが、そのクラスのオブジェクトにはバインドされていません。静的メソッドも同じですが、いくつかの基本的な違いがあります。クラスメソッドの場合は@classmethodデコレータを指定する必要があり、静的メソッドの場合は@staticmethodデコレータが使用されます。 クラスメソッドの構文。 class my_class: @classmethod deffunction_name(cls, arguments): #Function Body return value 静的メソッ