2017-08-30 4 views
1

私は2つのパスを持ち、その間に1つのディレクトリがあります。 私はxmlファイルにアクセスし、Pythonスクリプトでいくつかの変更を加えたいと思います。 これをどのように達成できますか?Python経由で複数のディレクトリに置かれたアクセスファイル

p1 = '/opt/apache-tomcat-8.0.33/webapps/' 
p2 = '/WEB-INF/classes/j2.xml' 

完全なパスは次のようになります。

/opt/apache-tomcat-8.0.33/webapps/text1/WEB-INF/classes/j2.xml 
/opt/apache-tomcat-8.0.33/webapps/`abc2`/WEB-INF/classes/j2.xml 

私は同じように配置され、ファイルのカップルを持っています。これについて私を助けてください。 ブロブを使用しようとしましたが、期待した結果が得られませんでした。

答えて

2
from glob import glob 

p1 = '/opt/apache-tomcat-8.0.33/webapps/' 
p2 = '/WEB-INF/classes/j2.xml' 

print(glob(p1+'*'+p2)) 
+0

:私は、以下のように私はそれと作品をテストし [] – tgcloud

+0

@tgcloudを >>>印刷(グロブ(P1 + '*' + P2)を)空のリストを取得しています。 Plsは、単純な例のディレクトリを使用してそれをテストし、実際の値の問題が何であるか把握しようとします。実際の値では、ディレクトリが存在し、globが期待通りに動作するかどうかを調べるシェル 'ls'を使ってテストします。 –

+0

@ gst-frank:yap、私の悪いことは絶対にうまくいく!私は文字列引用を欠落していた..!ありがとう! – tgcloud

0

これを試すことができます。ここでlistあなたのdirのコンテンツになる可能性があります。 GST-率直@

>>> p1 = '/opt/apache-tomcat-8.0.33/webapps/' 
>>> p2 = '/WEB-INF/classes/j2.xml' 
>>> list = ['test','`some`'] 
>>> for i in list: 
...  p1+i+p2 
... 
'/opt/apache-tomcat-8.0.33/webapps/test/WEB-INF/classes/j2.xml' 
'/opt/apache-tomcat-8.0.33/webapps/`some`/WEB-INF/classes/j2.xml' 
関連する問題