【问题标题】:Access file placed in multiple directories via python通过python访问放置在多个目录中的文件
【发布时间】:2018-02-07 16:12:19
【问题描述】:

我有两条路径,并且在一个目录之间是可变的。 我想访问 xml 文件并使用 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

我有几个文件,以相同的方式放置。请帮助我。 我尝试使用 blob 我无法达到预期的结果。

【问题讨论】:

    标签: python python-2.7 directory glob os.walk


    【解决方案1】:

    你可以试试这个。这里list 可能是你的目录内容。

    >>> 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'
    

    【讨论】:

      【解决方案2】:
      from glob import glob
      
      p1  = '/opt/apache-tomcat-8.0.33/webapps/'
      p2 = '/WEB-INF/classes/j2.xml'
      
      print(glob(p1+'*'+p2))
      

      【讨论】:

      • @gst-frank : 我得到如下的空列表,>>> print(glob(p1+'*'+p2)) []
      • @tgcloud 我测试了它并且工作正常。请使用简单的示例目录对其进行测试,然后尝试找出实际值的问题。使用 shell ls 测试实际值以查看目录是否存在并且 glob 是否按预期工作。
      • @gst-frank :是的,我的错,工作绝对没问题。!我错过了字符串引号..!谢谢!
      猜你喜欢
      • 2022-08-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-25
      • 1970-01-01
      • 2021-03-11
      相关资源
      最近更新 更多