2016-12-03 14 views
1

に.CSVファイルを変換しますは、私はこのようになります8列のペアを持つ.csvファイルを持っている.XML

これは、階層またはツリー構造を表し
level_1,level_1_desc, level_2, level_2_desc, level_3, level_3_desc, level_4,level_4_desc 

場所:

- Level 1 
    - Level 2 
     - Level 3 
      - Level 4 

.csvファイルの内容を読み込んで、辞書と同様にPythonの辞書変数に割り当てることができます。

は、私はあなたがブランドの新しい.xmlファイルを作成することができますPythonモジュール xml.etree.cElementTree

を持つ要素を作成するための基本を理解しています。

プログラムの設定方法を理解しようとしています。

私の戦略は次のとおりです。forループを使用して.csvのインデックスを作成し、ファイルの各行を調べて現在のレベルを比較し、そのレベルにノードを配置してから、次の行以前のレベルのノードが作成されている場合は、次のレベルのノードに移動します。

最終的な結果は次のようになります。

<root> 
    <level1> 
     <level2> 
      <level3> 
       <level4>A<level4 /> 
       <level4>B<level4 /> 
      <level3 /> 
     <level2 /> 
    <level1 /> 
<root /> 

答えて

2

私はcsvファイルを介してライン・バイ・ラインを移動しようとしません。代わりに、私は最初に最も論理的なpythonデータ構造の中にすべて入れてから、それを操作します。

これを行う最も論理的な方法は、CSVの各行が辞書のリストの要素である辞書のリストを作成することです。その後、リストの要素をループしてXML作成の作業を行います(これは私の経験がないので、問題がある場合はごめんなさい)

入力CSVの良い例があればそれにもっとよく答えるだろう。

関連する問題