9.2.6. 选择编写器的基类

专业选择编写器派生自 SelectionWriterBase 。重写 _write_head()_translate() ,以及 _write_tail() 方法。

class MDAnalysis.selections.base.SelectionWriterBase(filename, mode='w', numterms=None, preamble=None, **kwargs)[源代码]

将MDAnalysis中的选定内容导出为可在外部包中使用的格式。

这个 SelectionWriterBase 将选择字符串写入可在其他包中使用的文件,例如 VMDPyMOLGromacsCHARMM 。通过这种方式,可以使用手头最好或最方便的工具来完成分析和可视化。

SelectionWriterBase 是基类,子类是用包文件格式的适当自定义派生的。

在 0.11.0 版本发生变更: 现在还可以写入到 NamedStream 而不是普通文件(使用 openany )。

在 0.16.0 版本发生变更: 移除 wa 模式。现在,在创建实例并使用 close() 方法,或者在退出 with 声明。

设置为写入 文件名

参数:
  • filename -- 输出文件

  • mode -- 创建新文件(“w”),或将(“a”)追加到现有文件 ["w"]

  • numterms -- 在一行中写入多个条目的输出格式的每行单个索引号的数量。如果设置为0或 False 则不会执行特殊的格式化 [8]

  • preamble -- 作为注释写入文件顶部的字符串[]

  • kwargs -- 用作以下项的默认值 write()

__init__(filename, mode='w', numterms=None, preamble=None, **kwargs)[源代码]

设置为写入 文件名

参数:
  • filename -- 输出文件

  • mode -- 创建新文件(“w”),或将(“a”)追加到现有文件 ["w"]

  • numterms -- 在一行中写入多个条目的输出格式的每行单个索引号的数量。如果设置为0或 False 则不会执行特殊的格式化 [8]

  • preamble -- 作为注释写入文件顶部的字符串[]

  • kwargs -- 用作以下项的默认值 write()

_translate(atoms, **kwargs)[源代码]

将原子转换为原生选择术语列表。

  • 构建所有选择项的列表,就像这是一行一样,例如 ['index 12 |', 'index 22 |', 'index 33']

  • 每个原子只有一项!!

  • 条款 must BE字符串

  • 类似于::

    “”.Join(术语)

    必须奏效

_write_head(out, **kwargs)[源代码]

打开文件对象的初始输出 out

_write_tail(out, **kwargs)[源代码]

打开文件对象的最后一个输出 out

comment(s)[源代码]

返回字符串 s 插入到注释格式字符串中。

如果没有 SelectionWriterBase.commentfmt 则返回空字符串,因为可能无法向文件中输入注释。

换行符被附加到非空字符串。

write(selection, number=None, name=None, frame=None, mode=None)[源代码]

将所选内容写入输出文件。

参数:
  • selection -- 一个 MDAnalysis.core.groups.AtomGroup

  • number -- 所选内容将命名为“mdanalysis<number>” (None 写入之间自动递增;在追加时很有用) [None]

  • name -- 所选内容将命名为 name (而不是编号) [None]

  • frame -- write selection of this frame (or the current one if None [None]

MDAnalysis.selections.base.join(seq, string='', func=None)[源代码]

从序列创建列表。

字符串 被追加到除最后一个元素之外的每个元素。

func 在追加之前应用于每个元素 字符串