# -*- coding: utf-8 -*-
"""
Created on Sat Jun 20 19:36:34 2015 @author: chaofn
"""
import os """
这个程序的目的是将linux下/ifs/home/fanchao/Manesh_pdb目录中的所有文件(一共有215个文件)
批处理
将pdb文件生成dssp文件 """
#listdir返回文件名的列表
fileLine=os.listdir('/ifs/home/fanchao/Manesh_pdb')
#遍历整个列表
for i in range(len(fileLine)-1):
#将字符串用变量表示
input_file='/ifs/home/fanchao/Manesh_pdb/'+fileLine[i]
#先去掉文件名的后缀,然后形成后缀为dssp的文件名
out_file=fileLine[i].split('.')[0]+'.dssp'
output_file='/ifs/home/fanchao/Manesh_dssp/'+out_file
#注意:参数的传递(先是%s,然后是%变量名),多个变量的传入要用元组表示,在元组前用%
os.system('/ifs/share/lib/dssp/dssp2 -i %s -o %s' %(input_file,output_file))

批量处理数据:从dssp文件夹中遍历提取符合要求的数据,并写入另一个文件夹:

 # -*- coding: utf-8 -*-
"""
Created on Sun Jun 21 13:03:19 2015 @author: chaofan
""" import os
import re
#列出dssp文件夹中的所有文件名,返回的是一个列表
files=os.listdir('G:/Manesh_dssp')
#遍历整个文件夹
for filename in files:
#将文件的名称和扩展名分离
portion=os.path.splitext(filename)
#将每个文件后缀.dssp转化成.fasta。以便访问.fasta的文件
fastaFile=portion[0]+'.fasta'
#打开参数指定的fasta文件
fp=open('G:/Manesh_fasta/%s' %fastaFile)
#读取文件的第一行
strLine=fp.readlines()[0]
#用正则式提取该行的一个字母
letter=re.search(':([A-Z])\|',strLine).group(1)
#打开参数指定的dssp文件
fr=open('G:/Manesh_dssp/%s' %filename)
#生成后缀名为txt的文件
txtFile=portion[0]+'.txt'
fw=open('G:/Manesh_ACC/%s' %txtFile,'w' )
#从每个dssp文件的第28行开始读取
for line in fr.readlines()[28:]:
lineList=[]
#如果第11个字符等于参数字符,则写入
if line[11]==letter:
lineList.extend([line[7:10],line[11],line[13],line[35:38],'\n'])
#将列表转化成字符串并写入文件
fw.write(' '.join(lineList))
#关闭流
fw.close()
fr.close()
fw.close()

python批量处理的更多相关文章

  1. python批量进行文件修改操作

    python批量修改文件扩展名 在网上下载了一些文件,因为某种原因,扩展名多了一个后缀'.xxx',手动修改的话因为文件太多,改起来费时费力,于是决定写个小脚本进行修改. 1.要点: import r ...

  2. Python批量修改文本文件内容

    Python批量替换文件内容,支持嵌套文件夹 import os path="./" for root,dirs,files in os.walk(path): for name ...

  3. python批量修改linux主机密码

    +++++++++++++++++++++++++++++++++++++++++++标题:python批量修改Linux服务器密码时间:2019年2月24日内容:基于python实现批量修改linu ...

  4. 用python批量向数据库(MySQL)中导入数据

    用python批量向数据库(MySQL)中导入数据 现有数十万条数据,如下的经过打乱处理过的数据进行导入 数据库内部的表格的数据格式如下与下面的表格结构相同 Current database: pyt ...

  5. python批量给云主机配置安全组

    python批量给云主机配置安全组 用公有云的思路去思考去实现一个安全稳定.可伸缩和经济的业务构架,云运维是有别与传统运维的,比如说了解公有云的都知道安全组的概念,安全组跟防火墙功能很相似,那我的机器 ...

  6. 用Python批量下载DACC的MODIS数据

    本人初次尝试用Python批量下载DACC的MODIS数据,记下步骤,提醒自己,数据还在下载,成功是否未知,等待结果中...... 若有大佬发现步骤有不对之处,望指出,不胜感激. 1.下载Python ...

  7. Python批量修改图片格式和尺寸

    Python批量修改图片格式和尺寸 备注: 1.导入了PIL库,是处理图片用的,很强大; 2.导入了的win32库,是判断隐藏文件用的,我们的项目需要删除隐藏文件,不需要的可以直接找到删除. 3.导入 ...

  8. tinypng的python批量压缩图片功能

    tinypng网站提供的图片压缩功能很不错,但是直接在网站上压缩有限制,大量压缩图片时比较麻烦,还好官方提供了很多脚本的自动化压缩接口.下面简单说下python批量压缩步骤. 1.申请api key ...

  9. Python批量复制和重命名文件

    Python批量复制和重命名文件 示例代码 #! /usr/bin/env python # coding=utf-8 import os import shutil import time impo ...

  10. Python批量自动裁剪图片

    """用Pythonp批量裁剪图片""" from PIL import Image import matplotlib.pyplot as ...

随机推荐

  1. javascript中的异步 macrotask 和 microtask 简介

    javascript中的异步 macrotask 和 microtask 简介 什么是macrotask?什么是microtask?在理解什么是macrotask?什么是microtask之前,我们先 ...

  2. 文件系统常用命令df、du、fsck、dumpe2fs

    df 查看文件系统 [root@localhost ~]# df 文件系统 1K-块 已用 可用 已用% 挂载点 /dev/sda5 16558080 1337676 15220404 9% / de ...

  3. 【python】BIF及查看函数帮助

    Python 3.6.0 (v3.6.0:41df79263a11, Dec 23 2016, 07:18:10) [MSC v.1900 32 bit (Intel)] on win32 Type ...

  4. Java之数据类型,变量赋值

    Java中的基础数据类型(四类八种): 1.整数型 byte----使用byte关键字来定义byte型变量,可以一次定义多个变量并对其进行赋值,也可以不进行赋值.byte型是整型中所分配的内存空间是最 ...

  5. [Maven] Missing artifact

    今天从朋友那拷过来一个maven工程,eclipse中maven配置好了,maven仓库也配置完毕,但是一直报Missing artifact,然后开网执行maven update,下载完jar后,还 ...

  6. [array] leetcode - 35. Search Insert Position - Easy

    leetcode - 35. Search Insert Position - Easy descrition Given a sorted array and a target value, ret ...

  7. javascript + sql编写SQL客户端工具tabris

    祝大家2018新年快乐, 前不久发现了一个创意的脚本JtSQL(java编写) 开源地址为:https://github.com/noear/JtSQL JtSQL 特点:*.结合了JS.SQL.模板 ...

  8. android的ADK下载地址

    把下面所有的包下载到temp目录下进行安装. 用代理http://ppdaili.com/https://dl-ssl.google.com/android/repository/repository ...

  9. Java NIO (五) 管道 (Pipe)

    Java NIO 管道是2个线程之间的单向数据连接.Pipe有一个source通道和一个sink通道.数据会被写到sink通道,从source通道读取. 如下图: 向管道写数据: 从管道读数据: 1. ...

  10. IDEA 环境设置

    IDEA环境设置 任何事物都有两面性,如何用好才是关键.IDEA为我们提供了丰富的功能,但不代表默认的配置就适合于你.我们应当根据自己的条件.需求合理的配置,从而驾驭好这匹悍马.让它成为我们编程的利器 ...