美文网首页
Python寻找文件以及移动文件

Python寻找文件以及移动文件

作者: ZeroDesigner | 来源:发表于2019-05-06 10:31 被阅读0次

    版本:

    python3.5

    目的:

    文件目录'/data/home/pdbqt/'下,有
    new1.pdbqt
    new2.pdbqt
    .....
    new1000000.pdbqt
    共1000000个文件,需要选取前1oooo个文件,将其复制到'/data/home/100000/'下

    脚本:

    两个初级班,运行比较慢,进阶版很快,自己可以尝试比较下原因
    初级版:(比较慢)

    #导入各种包
    import numpy as np
    import os
    import shutil 
    from shutil import copyfile
    #创建一个等差数列,从1到100000
    a=np.arange(1,100001,1)
    #输入目录,pdbqt为所需文件夹,pdbqt1为输出文件夹
    pdbqt='/data/home/pdbqt/'
    pdbqt1='/data/home/100000/'
    #循环以及移动文件
    for i in range(len(a)):
        file_name=re.sub('iii',str(a[i]),'newiii.pdbqt')
            print(file_name)
    #正则表达式,创建file_name,file_name为new1.pdbqt直到new10000.pdbqt
        if file_name in os.listdir(pdbqt):
            copyfile(pdbqt+file_name,pdbqt1+file_name)
    #在pdbqt中寻找和file_name文件名一致的文件,并且将其移动到pdbqt1中
    print('Done')
    

    进阶版:(更快)

    #导入各种包
    import numpy as np
    import re
    import os
    import sys
    import shutil 
    from shutil import copyfile
    
    #创建一个等差数列,从1到100000
    a=np.arange(1,100001,1)
    #输入目录
    pdbqt='/data/home/pdbqt/'
    pdbqt1='/data/home/100000/'
    file=os.listdir(pdbqt)
    for i in range(len(a)):
        file_name=re.sub('iii',str(a[i]),'newiii.pdbqt')
        if file_name in file:
            print(file_name)
            copyfile(pdbqt+file_name,pdbqt1+file_name)
    print('Done')
    '''
    

    相关文章

      网友评论

          本文标题:Python寻找文件以及移动文件

          本文链接:https://www.haomeiwen.com/subject/tunloqtx.html