2012-02-17 10 views
0

定義する変数のリストが(〜100)長いです。次のように定義します。Pythonで長い変数リストを定義する

provider = node.xpath("//provider/text()")[0] 
language = node.xpath("//language/text()")[0] 
subtype = node.xpath("//subtype/text()")[0] 
etc... 

私は、より簡潔/ DRYのような何か、それをどのように定義するか - これを行うために、より簡潔な方法は、辞書を使用することです

COLUMN_VARIABLES = ['provider', 'language','subtype'] 

for variable in COLUMN_VARIABLES: 
    variable = node.xpath("//%s/text()"%variable)[0] 

答えて

6

を:

COLUMN_VARIABLES = ['provider', 'language','subtype'] 
data = {} 

for variable in COLUMN_VARIABLES: 
    data[variable] = node.xpath("//%s/text()"%variable)[0] 

Proのヒント:可変の変数名を使用したいと思うときはいつでも、変数を必要としないという意味で、1つのコンテナにすべてのデータを保持する必要があります。

3

辞書使用します。

COLUMN_VARIABLES = ['provider', 'language','subtype'] 

vars = {}  
for variable in COLUMN_VARIABLES: 
    vars[variable] = node.xpath("//%s/text()"%variable)[0] 
1

が結果を保持するためにdictを使用します。

column_vars = ['provider', 'language','subtype'] 
nodes = {} 

for var in column_vars: 
    nodes[var] = node.xpath("//%s/text()" % variable)[0] 
関連する問題