我有两个文件:

一个文件叫exemple_data.csv 里面包含3个id,每个id一行

ZINC04203483

ZINC26895155

ZINC03651026

一个文件叫exemple.sdf里面包含有十个分子,每个分子有id号和它空间结构数据,每个分子以四个"$$$$"作为结尾

ZINC04203483

7 6 0 0 0 0 0 0 0 0999 V2000

1.7848 -1.3593 -0.0709 C 0 0 0 0 0

1.2676 -3.5870 0.7267 C 0 0 0 0 0

1.0097 -2.1011 0.9436 C 0 0 0 0 0

1.6939 -0.0371 -0.0717 N 0 0 0 0 0

2.5202 -2.0619 -0.9208 N 0 0 0 0 0

2.4714 -3.9467 0.8577 O 0 0 0 0 0

0.2468 -4.2712 0.4339 O 0 0 0 0 0

1 4 1 0 0 0

2 6 1 0 0 0

3 1 1 0 0 0

3 2 1 0 0 0

1 5 2 0 0 0

2 7 2 0 0 0

M CHG 2 5 1 6 -1

M END

>

0.238019541

$$$$

ZINC02034713

7 6 0 0 0 0 0 0 0 0999 V2000

1.4359 -3.6052 0.4738 C 0 0 0 0 0

1.9307 -1.1052 0.7490 C 0 0 0 0 0

1.5337 -2.2272 -0.1964 C 0 0 0 0 0

1.5927 0.2012 0.1266 N 0 0 0 0 0

2.4694 -4.0171 1.0694 O 0 0 0 0 0

0.3107 -4.1689 0.3418 O 0 0 0 0 0

2.5239 -2.3360 -1.2177 O 0 0 0 0 0

1 5 1 0 0 0

2 3 1 0 0 0

2 4 1 0 0 0

3 1 1 0 0 0

3 7 1 0 0 0

1 6 2 0 0 0

M CHG 2 4 1 5 -1

M END

>

0.0787463188

$$$$

ZINC02034711

7 6 0 0 0 0 0 0 0 0999 V2000

1.6225 -3.6225 0.5829 C 0 0 0 0 0

1.0839 -1.1178 0.4821 C 0 0 0 0 0

2.0739 -2.2211 0.1469 C 0 0 0 0 0

1.6545 0.1920 0.0735 N 0 0 0 0 0

0.5089 -4.0191 0.1414 O 0 0 0 0 0

2.4376 -4.2168 1.3471 O 0 0 0 0 0

2.2421 -2.2653 -1.2693 O 0 0 0 0 0

1 5 1 0 0 0

2 3 1 0 0 0

2 4 1 0 0 0

3 1 1 0 0 0

3 7 1 0 0 0

1 6 2 0 0 0

M CHG 2 4 1 5 -1

M END

>

0.279566735

$$$$

ZINC26895155

8 7 0 0 0 0 0 0 0 0999 V2000

2.1705 -1.5475 -0.5415 C 0 0 0 0 0

1.3387 -3.5612 0.6628 C 0 0 0 0 0

1.3018 -2.0375 0.6037 C 0 0 0 0 0

2.2100 -0.2617 -0.7298 N 0 0 0 0 0

2.8130 -2.5199 -1.2719 N 0 0 0 0 0

2.4811 -4.0619 0.8624 O 0 0 0 0 0

0.2238 -4.1310 0.4963 O 0 0 0 0 0

1.4055 0.3868 0.2119 O 0 0 0 0 0

1 5 1 0 0 0

2 6 1 0 0 0

3 1 1 0 0 0

3 2 1 0 0 0

4 8 1 0 0 0

1 4 2 0 0 0

2 7 2 0 0 0

M CHG 1 6 -1

M END

>

0.274481624

$$$$

ZINC01695856

8 7 0 0 0 0 0 0 0 0999 V2000

1.4057 -3.6199 0.4828 C 0 0 0 0 0

0.6383 -0.9506 1.9111 C 0 0 0 0 0

1.4135 -2.2167 -0.1491 C 0 0 0 0 0

1.6928 -1.0605 0.8132 C 0 0 0 0 0

2.4525 -3.9696 1.0940 O 0 0 0 0 0

0.3286 -4.2614 0.3095 O 0 0 0 0 0

2.4250 -2.2353 -1.1545 O 0 0 0 0 0

1.6953 0.1565 0.0693 O 0 0 0 0 0

1 5 1 0 0 0

2 4 1 0 0 0

3 1 1 0 0 0

3 4 1 0 0 0

3 7 1 0 0 0

4 8 1 0 0 0

1 6 2 0 0 0

M CHG 1 5 -1

M END

>

0.0781114399

$$$$

ZINC01695854

8 7 0 0 0 0 0 0 0 0999 V2000

1.6021 -3.5832 0.5544 C 0 0 0 0 0

-0.1123 -1.0849 -0.8065 C 0 0 0 0 0

2.0136 -2.1983 0.0239 C 0 0 0 0 0

0.9936 -1.0796 0.2454 C 0 0 0 0 0

0.5225 -4.0604 0.1088 O 0 0 0 0 0

2.4141 -4.0828 1.3866 O 0 0 0 0 0

2.2393 -2.3565 -1.3754 O 0 0 0 0 0

1.6735 0.1723 0.1761 O 0 0 0 0 0

1 5 1 0 0 0

2 4 1 0 0 0

3 1 1 0 0 0

3 4 1 0 0 0

3 7 1 0 0 0

4 8 1 0 0 0

1 6 2 0 0 0

M CHG 1 5 -1

M END

>

0.284852803

$$$$

ZINC13352867

8 7 0 0 0 0 0 0 0 0999 V2000

1.3740 -3.6291 0.4754 C 0 0 0 0 0

0.5507 -0.9450 1.8830 C 0 0 0 0 0

1.3678 -2.2326 -0.1626 C 0 0 0 0 0

1.6446 -1.1066 0.8351 C 0 0 0 0 0

1.7289 0.1781 0.0725 N 0 0 0 0 0

2.4415 -3.9229 1.0855 O 0 0 0 0 0

0.3299 -4.3189 0.3058 O 0 0 0 0 0

2.4081 -2.2413 -1.1410 O 0 0 0 0 0

1 6 1 0 0 0

2 4 1 0 0 0

3 1 1 0 0 0

3 4 1 0 0 0

3 8 1 0 0 0

4 5 1 0 0 0

1 7 2 0 0 0

M CHG 2 5 1 6 -1

M END

>

0.0959857255

$$$$

ZINC01695855

8 7 0 0 0 0 0 0 0 0999 V2000

1.6218 -3.6149 0.5878 C 0 0 0 0 0

0.9014 -0.9485 2.0417 C 0 0 0 0 0

2.0724 -2.2038 0.1703 C 0 0 0 0 0

1.1102 -1.0715 0.5348 C 0 0 0 0 0

0.5070 -4.0057 0.1448 O 0 0 0 0 0

2.4420 -4.2214 1.3368 O 0 0 0 0 0

2.2392 -2.2394 -1.2457 O 0 0 0 0 0

1.6552 0.1562 0.0551 O 0 0 0 0 0

1 5 1 0 0 0

2 4 1 0 0 0

3 1 1 0 0 0

3 4 1 0 0 0

3 7 1 0 0 0

4 8 1 0 0 0

1 6 2 0 0 0

M CHG 1 5 -1

M END

>

0.280759811

$$$$

ZINC03651026

8 7 0 0 0 0 0 0 0 0999 V2000

1.4934 -3.7154 0.5054 C 0 0 0 0 0

2.4732 -1.3603 0.9745 C 0 0 0 0 0

2.6877 0.0369 0.4066 C 0 0 0 0 0

1.7876 -2.3003 -0.0110 C 0 0 0 0 0

2.5054 -4.3269 0.9548 O 0 0 0 0 0

0.2927 -4.0978 0.4363 O 0 0 0 0 0

1.4341 0.6134 0.0639 O 0 0 0 0 0

2.6547 -2.4571 -1.1350 O 0 0 0 0 0

1 5 1 0 0 0

2 3 1 0 0 0

2 4 1 0 0 0

3 7 1 0 0 0

4 1 1 0 0 0

4 8 1 0 0 0

1 6 2 0 0 0

M CHG 1 5 -1

M END

>

0.315417558

$$$$

ZINC13352859

8 7 0 0 0 0 0 0 0 0999 V2000

1.6269 -3.5849 0.5524 C 0 0 0 0 0

-0.0728 -1.1104 -0.9226 C 0 0 0 0 0

2.0361 -2.2127 -0.0019 C 0 0 0 0 0

0.9669 -1.1360 0.1908 C 0 0 0 0 0

1.6474 0.1967 0.2000 N 0 0 0 0 0

0.5319 -4.0279 0.1019 O 0 0 0 0 0

2.4154 -4.0983 1.3946 O 0 0 0 0 0

2.2503 -2.4010 -1.4013 O 0 0 0 0 0

1 6 1 0 0 0

2 4 1 0 0 0

3 1 1 0 0 0

3 4 1 0 0 0

3 8 1 0 0 0

4 5 1 0 0 0

1 7 2 0 0 0

M CHG 2 5 1 6 -1

M END

>

0.302429646

$$$$

我希望通过第一个文件里的3个ID在第二个文件查找相对应的分子信息,然后输入到一个新文件里。或者输入到3个新文件里每个文件包含一个分子的所有信息内容包括"$$$$"结尾。

我自己编了个程序怎么都不成功,有没有神人可以帮我修改或重新写一个

我编的程序可以用python tire_database_sdf.py exemple_data.csv exemple.sdf result.csv

现在的问题是我result里的内容exemple.sdf 一样有十个分子,可我只希望result内容只包含六个分子信息对照exemple_data.csv 里边的3个id。

#!/usr/bin/env python

# -*- coding: utf-8 -*-

import sys

import re

filename = sys.argv[1]

inputfile = sys.argv[2]

outfile = sys.argv[3]

def liste_id(filename):

list_id = []

with open(filename,"r") as f:

for i in f:

i = i.strip("\n")

list_id.append(i)

return list_id

identifiant = liste_id(filename)

filout = open(outfile,"w")

with open(inputfile,"r") as filin:

newmol = False

element = []

for line in filin:

for ele in identifiant:

if re.search(ele,line):

newmol = True

if line == "$$$$":

newmol = False

if newmol == True:

filout.write(line)

多个python文件相互调用_用 python提取两个文件之间的内容相关推荐

  1. python文件之间的相互调用_「Python 系列」 Python 生成器函数详解

    Python的生成器函数提供了一种强大的机制来管理数据和计算资源,但是对于Python的新手来说,它们不一定直观.在本文中,我将分解生成器的机制,同时还介绍我希望是一个有启发性的示例:用于管理和流传输 ...

  2. python文件之间的相互调用_用Python创建功能模块——截取字符串模块

    用Python创建模块 本篇文章小编给大家分享在Python如何创建属于自己的模块,实现更多的功能! 一.模块 模块是什么?简单来说,当程序的功能很多.代码量很大时,我们可以编写一个实现一定功能的py ...

  3. python文件之间的相互调用_一行 Python 代码能实现什么丧心病狂的功能?

    python一直被病垢运行速度太慢,但是实际上python的执行效率并不慢,慢的是python用的解释器Cpython运行效率太差. "一行代码让python的运行速度提高100倍" ...

  4. python golang相互调用_golang和python互相调用

    2018 June 27 go, golang, python golang和python互相调用 网站 综述 golang和python之间,当前可以通过golang的cgo和python的ctyp ...

  5. python requests 异步调用_带有Python请求的异步请求

    小编典典 注意 下面的答案是不适用于请求v0.13.0 +.编写此问题后,异步功能已移至grequests.但是,你可以将其替换requests为grequests下面的内容,它应该可以工作. 我已经 ...

  6. python静态方法怎么调用_在python中调用静态方法

    你需要做如下事情:class Person(object): #always inherit from object. It's just a good idea... @staticmethod d ...

  7. makefile 和shell文件相互调用

    shell 文件内调用makefile文件: #!/bin/bash cd ctemplate-2.1 ./configure sudo make -f install cd ../ cd Templ ...

  8. c语言实现爬虫功能,用C/C 扩展Python语言_python 调用c语言 python实现简单爬虫功能_python实现简单爬虫...

    用C/C 扩展Python语言 Python是一门功能强大的脚本语言,它的强大不仅表现在功能上,还表现在其扩展性上.她提供大量的API以方便程序员利用C/C++对Python进行扩展.因为执行速度慢几 ...

  9. Python语言学习:利用python语言实现调用内部命令(python调用Shell脚本)—命令提示符cmd的几种方法

    Python语言学习:利用python语言实现调用内部命令(python调用Shell脚本)-命令提示符cmd的几种方法 目录 利用python语言实现调用内部命令-命令提示符cmd的几种方法 T1. ...

最新文章

  1. 卷积神经网络为什么能称霸计算机视觉领域?
  2. 删除svn同步文件目录
  3. csgo国服文件转国际服务器,csgo国际服怎么转国服 csgo国际服转到国服方法介绍...
  4. visio中UML在活动图中指示判定
  5. 父亲节,程序员几条代码硬核示爱
  6. java 与sas交互_SAS与MACRO的交互使用
  7. JDK 11,Tomcat卡在Deploying web application directory
  8. 如何选购一款好的人事档案管理系统
  9. 目标检测(二十三)--DenseBox
  10. 神奇的数学:牛津教授给青少年的讲座
  11. 适合新手练习的二十套Java项目源码大分享
  12. 安卓系统管理软件_便捷仓库管理软件智能管理系统
  13. 如何在 Windows 10/11 下通过命令卸载产品许可密钥
  14. hulu dpp_如何取消您的Hulu订阅
  15. c语言绕过dnf检测,过掉DNF游戏保护,仅供学习研究。不得用于非法途径
  16. YUV播放器支持10bit视频
  17. 如何复制Google云端硬盘文件夹
  18. 微信小程序屏幕适配不同的iPhone
  19. 【PHP框架 | Laravel8 系列3】 - 路由
  20. 我的世界神级种子Java_盘点我的世界中单机生存必备的神级种子

热门文章

  1. C#、.Net经典面试题目及答案
  2. android 上下扫描动画,Android扫描雷达动画
  3. java arrays方法_Java工具类Arrays中不得不知的常用方法
  4. python查询mysql表名字动态日期_Python之路day11作业-MySQL表查询
  5. vue中进度条写法_vue组件实现进度条效果
  6. php 访问网页返回值,Ping网站并用PHP返回结果
  7. tf 从RNN到BERT
  8. gunicorn 配置日志
  9. Linux脚本让我选择文件,linux – 用于选择文件和打印文件大小的Awk脚本
  10. 怎么给web 服务器 传文件,web文件传到服务器