私はすべてのAWSリージョンを含むPythonクラスを持っています。私はすべての地域のリストを返すクラスメソッドを書いた。私は下の例でやっているようにreturn文のすべての値をハードコードする必要はないので、すべてのクラス変数の値を返す良い方法はありますか?Pythonクラスからすべてのクラス変数値を返します
class AwsRegion():
'''
Class to define AWS Regions
'''
OHIO = 'us-east-2'
NORTH_VIRGINIA = 'us-east-1'
NORTH_CALIFORNIA = 'us-west-1'
OREGON = 'us-west-2'
MUMBAI = 'ap-south-1'
SEOUL = 'ap-northeast-2'
SINGAPORE = 'ap-southeast-1'
SYDNEY = 'ap-southeast-2'
TOKYO = 'ap-northeast-1'
FRANKFURT = 'eu-central-1'
IRELAND = 'eu-west-1'
LONDON = 'eu-west-2'
SAO_PAULO = 'sa-east-1'
@classmethod
def all(cls,):
return [AwsRegion.OHIO, AwsRegion.NORTH_VIRGINIA, AwsRegion.NORTH_CALIFORNIA, AwsRegion.OREGON, \
AwsRegion.MUMBAI, AwsRegion.SEOUL, AwsRegion.SINGAPORE, AwsRegion.SYDNEY, AwsRegion.TOKYO, \
AwsRegion.FRANKFURT, AwsRegion.IRELAND, AwsRegion.LONDON, AwsRegion.SAO_PAULO]
'all'はクラス属性** too **です。あなたは呼び出し可能でないか、そうでなければ記述子ではないものを意味しますか? –
これらの値を返すシンプルな方法は、リスト内でハードコーディングするよりも簡単です... –