首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用python脚本从文件夹检索文件到文本文件的路径?

如何使用python脚本从文件夹检索文件到文本文件的路径?
EN

Stack Overflow用户
提问于 2015-04-22 12:24:09
回答 2查看 181关注 0票数 3
代码语言:javascript
复制
import shutil
import os

def get_files():
    source = os.listdir("/output_folder/sample/cufflinks/")
    destination = "output_folder/assemblies.txt"
    for files in source:
        if files.with("transcripts.gtf"):
            shutil.move(files,destination)

我想将transcripts.gtf文件从"/output_folder/sample/cufflinks/"检索到assemblies.txt。以上代码是否正确。请帮帮我。谢谢!!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-04-22 12:42:54

您可以使用os.walk

代码语言:javascript
复制
import os
import shutil
from os.path import join

destination =  "/output_folder/assemblies.txt" # Absolute path, or use join
folder_to_look_in = "/output_folder/sample/cufflinks/" # Absolute folder path, or use join
for _, _, files in os.walk(folder_to_look_in):
    for file_name in files:
        if file_name.endswith("transcripts.gtf"):
            try:
                # 'a' will append the data to the tail of the file
                with open(destination, 'a') as my_super_file:
                    my_super_file.write(file_name)
            except OSError as e:
                print "I/O error({0}): {1}".format(e.errno, e.strerror)
票数 2
EN

Stack Overflow用户

发布于 2015-04-22 12:57:01

我想我终于明白你想要达到的目标了。使用glob.glob()函数:

代码语言:javascript
复制
import glob
destination = "output_folder/assemblies.txt"
source = '/output_folder/sample/cufflinks/*/*transcripts.gtf'
with open(destination, 'w') as f:
    f.write('\n'.join(glob.glob(source))+'\n')

f.write('\n'.join(glob.glob(source))+'\n')相当于:

代码语言:javascript
复制
s = ''
for path in glob.glob(source):
    s += '{}\n'.format(path)
f.write(s)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29797496

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档