python - 如何将 PyMOL 中的命令输出保存到 txt 文件?
问题描述
我是 PyMOL 的新手,我正在尝试编写一个 python 脚本来生成一个 .txt 文件并将 PyMOL 命令输出保存到它。假设它有一个包含 pdb 文件名称的数组和一个将每个文件与某个特定蛋白质对齐的 for 循环:
pdb = ["191L", "192L", "193L", "194L"]
cmd.fetch("190L")
for i in pdb:
cmd.fetch(i)
cmd.align(i, "190L")
PyMOL 将计算每个对齐的 RMSD。如何编写脚本以获取每个 RMSD 并将其保存到文本文件中?
这是我到目前为止所拥有的:
def get_rmsd():
cmd.fetch("190L")
for i in pdb:
cmd.fetch(i)
output = open("rmsd.txt", "w")
data = cmd.align(i, "190L")
data = str(data)
output.write(data)
stored.f.close()
当我在 PyMOL 上调用该函数时,它会按预期方式获取并对齐文件,但不会创建文本文件。
解决方案
for i in pdb:
cmd.fetch(i)
output = open("rmsd.txt", "w")
data = cmd.align(i, "190L")
data = str(data)
output.write(data)
stored.f.close()
尝试:
for i in pdb:
cmd.fetch(i)
output = open("rmsd.txt", "a")
data = cmd.align(i, "190L")
output.write("%s\n" % data)
output.close()
应该做的工作
推荐阅读
- python - 运行 pyspark 返回错误:找不到 ipython。(视窗 10)
- android - 当我尝试在 Android Studio 上执行我的项目时。它显示以下错误
- mediaelement - 如何使用 MediaElements.JS 实现插播广告?
- rust - 如何将 hyper 的 Body 流转换为 Result
>? - sql-server - 如何使用 Spring Data JPA 为非 ID 列执行具有最大值 + 1 逻辑的批量插入
- django - 如何从嵌套序列化程序中排除特定实例,但将其包含在基础模型中
- r - 数据框中的循环计数
- php - 我无法将选项“-v”添加到控制台 symfony
- tensorflow - 有没有办法禁用张量板上的图像视图或从事件文件中删除它们?
- vba - Word vba中等效的工作表功能