0
Pythonのメソッド/属性に「ファーストクラス」の概念を適用することができますか?文字列オブジェクト'uppercase'
を生成するためにPythonのメソッド/属性で "ファーストクラス"の概念を使用できますか?
>>>case='lower'
>>>'UPPERCASE'.case()
:
>>>a=sum
>>>a([1,2,3])
6
私のような何かをしたいと思います。それ以外の場合は、eval
を使用するだけですか?
確か; 'getattr( '大文字、小文字)()'は大文字になります(例:http://stackoverflow.com/q/2612610/3001761参照)。ただし、あなたの例は同等ではありません。最初に関数自体を割り当て、2番目にメソッドの* name *を割り当てます。もっと適切なのは 'case = str.lower'で、' case( 'UPPERCASE') 'が必要です。 – jonrsharpe
文字列オブジェクトのメソッドを追加/変更することはできません。もし 'str'をサブクラス化するならば、クラス定義の中で' case = str.lower'を定義し、 'MyStr( 'UPPERCASE')。case() > '大文字' ' –
どのような "ファーストクラス"の概念が正確に意味するのですか? – mhbashari