问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

麻烦万能的python王帮忙编个小程!感激不尽!【在线等】

发布网友 发布时间:2023-07-17 11:40

我来回答

5个回答

热心网友 时间:2024-12-06 05:50

#coding=utf-8
'''
Created on 2014-11-10

@author: Neo
'''
import os

def GetFileList(dir, fileList, nameList):
    #文件列表fileList
    #只取文件名的列表nameList
    newDir = dir
    if os.path.isfile(dir):
        fileList.append(dir.decode('gbk')) 
        nameList.append(os.path.basename(dir.decode('gbk'))) 
    elif os.path.isdir(dir):  
        for s in os.listdir(dir):
            if s == ".popoCloud":
                continue
            newDir=os.path.join(dir,s)
            GetFileList(newDir, fileList, nameList)
                  
    return fileList, nameList

fileList = []
nameList = []
#你存放fas文件的目录,如:
#dir = 'd:/xxx/xxx/'
dir = (os.getcwd() + '\\fas\\').replace('\\','/')   

fileList, nameList = GetFileList(dir, fileList, nameList)
print fileList, nameList

#根据你的要求替换文件内容
for i in range(fileList.__len__()):
    print fileList[i]
    fp = open(fileList[i],'r')
    #我不清楚你的每个fas有多大,如果比较大,就换一种读写方式
    str = fp.read()
    fp.close()
#     print str
    str = str.replace('>', '>' + nameList[i][:-4] +'_')
#     print str
    fp = open(fileList[i],'w')
    fp.write(str)
    fp.close()

print "OK"

效果如下:

[u'D:/workspace/PyDemo/fas/AAAA.fas', u'D:/workspace/PyDemo/fas/BBBB.fas', u'D:/workspace/PyDemo/fas/CCCC.fas'] [u'AAAA.fas', u'BBBB.fas', u'CCCC.fas']

D:/workspace/PyDemo/fas/AAAA.fas

D:/workspace/PyDemo/fas/BBBB.fas

D:/workspace/PyDemo/fas/CCCC.fas

OK

热心网友 时间:2024-12-06 05:50

看下面的代码,用函数 update_files('/path/to/fas/files') 可以将 /path/to/fas/files 目录下的所有 xxx.fas 文件做你需要的修改。 (使用前注意备份,它会直接修改文件)


import os

def update_files(path):
    for f in os.listdir(path):
        if not os.path.isfile(f):
            continue
        name, sep, suffix = os.path.basename(f).rpartition('.')
        if sep != '.' or suffix != 'fas':
            continue
        with open(f, 'r') as fd:
            text = fd.read()
        with open(f, 'w') as fd:
            lines = ['>%s_%s' % (name, l[1:]) if l[0] == '>' else l
                     for l in text.splitlines(True)]
            fd.writelines(lines)

# update_files('/path/to')
# update_files('.')

热心网友 时间:2024-12-06 05:51

如果只是这样的话,很简单的:

from glob import glob
for re_filename in glob("*.fas"):
    input_file = open(re_filename).read()
    new_file = open('new_'+re_filename,'w').write(input_file.replace('>','>'+re_filename[:-4]+'_'))
    new_file.close()

热心网友 时间:2024-12-06 05:52

import os.path

def lineadjust(ln, fname):
    return ln.startswith(">") and (">%s_%s" % (fname, ln[1:])) or ln

def filecontextadjustbyname(fullname):
    fname, ename = os.path.splitext(os.path.basename(fullname))
    context = [lineadjust(ln, fname) for ln in open(fullname)]
    with open(fullname, 'wt') as handle:
        handle.writelines(context)

for filename in yourfilelist:
    context = filecontextadjustbyname(filename)

热心网友 时间:2024-12-06 05:52

文件内容多不多?
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
build腰带迷失漂流瓶几元 BANDAI万代假面骑士Build 飞电01驱动器-适用对象 BANDAI 万代 假面骑士Build 飞电01驱动器-详细介绍 纸胶带能做什么手工 黑死病是哪个时期 黑死病和伽利略谁的时代更早 双十二有购物津贴吗 双12购物津贴领取方法和使用规则 双十二满减是多少?满减有什么规则? 双十二满减规则是什么?详细内容介绍 双12淘宝如何满减?规则是什么? 李雪琴是宁宁吗 五进制11转十进制是几 关于整数类型的4种进制表示,哪个选项的描述是正确的? 神话少爷读后感三百字 邪神少爷电子书txt全集下载 如何理解生活大爆炸剧名翻译 21岁大学毕业生疑因面试失败从33楼坠楼身亡 昌平北大青鸟java培训就业率高吗?用数据说话 最难就业年的官方重视 ...人说2013年全国毕业生有近699万 史上最难就业季 是什么意思啊_百度... 2013史上最难就业季:精通3国语言的英国留学生也失业 ...发展比常州快,为什么常州人却很看不起江北人呢??我是常州 2022年下半年四级英语考试容易通过吗 2022年12月山东四六级好过吗 单行履带玉米收割机容易侧翻吗 北京bj40l遥控器匹配方法 北京BJ40钥匙芯片在什么位置 五河公安局里电话号码多少 神奇花园草本水光蚕丝面膜的面膜布是什么? 4岁小孩都半夜了不睡觉,打了一顿哭着睡着了有什么影响? DNF满材料带领主之塔50W是什么意思 麻烦万能的python王帮忙编个小程!感激不尽! 维塔士属于什么级别 维塔斯·格拉乔夫品牌什么档次 DNF我收到一个邮件 里面有50w 怎么回事 我知道是跟刷祭坛和死亡有关 但... 在地下城里怎样快速赚到50W左右 为什么维塔斯不能算著名男高音 爱玛劲霸f692电摩一共有几个档位 爱玛劲霸f692电摩是不是智能车 自我五维度 黄廷祝的人物简历 哈尔滨 理查德克莱德曼 本人有脾胃湿热 打算喝粥 想用 薏米 赤小豆 茯苓 加绿豆熬粥来治疗 请... 胃病能吃绿豆吗? 王玉雯体重 求盗墓笔记超清图做笔记本电脑贴用的 尺寸1400*800以上 最好图简单一... 金蝶sql批量删除物料 金蝶K3,由于公司建立初期创建不少不规范物料代码, 现在需要清理_百度... 金蝶K3系统中使用过的BOM表怎么删除 怎样将K3里面重复的物料快速清除干净