当前位置: 首页 > news >正文

PyMOL 命令行完全指南(终极完整版)

PyMOL 命令行完全指南(终极完整版)

PyMOL 是一个功能强大的分子可视化软件,其命令行界面提供了对软件的精细控制。本指南旨在全面收录 PyMOL 的所有命令和使用方法,包括命令行启动选项、脚本编写、颜色系统等。

信息主要来源于官方 PyMOLWiki,经过详细整理和补充。

目录

  1. 命令行启动选项 (Command Line Options)
  2. PyMOL 脚本编写 (Script Writing)
  3. 颜色系统 (Color System)
  4. 选择原子 (Selection)
  5. 原子选择语法 (Selection Syntax)
  6. 显示与表示 (Display & Representation)
  7. 颜色 (Coloring)
  8. 透明度 (Transparency)
  9. 视图与相机 (Viewing & Camera)
  10. 文件输入/输出 (File I/O)
  11. 图片/动画导出 (Image/Movie Export)
  12. 结构对齐与叠合 (Structural Alignment)
  13. 测量与分析 (Measurement & Analysis)
  14. 分子编辑与构建 (Molecular Editing)
  15. 对象操作 (Object Control)
  16. 坐标变换 (Coordinate Transformation)
  17. 表面与体积 (Surface & Volume)
  18. 动画与状态 (Animation & States)
  19. 设置 (Settings)
  20. 内置工具/向导 (Built-in Tools/Wizards)
  21. 迭代与批处理 (Iteration & Batch Processing)
  22. Python API - cmd 模块命令 (Python API Commands)
  23. 其他命令 (Miscellaneous)
  24. 常见使用场景速查 (Quick Reference for Common Tasks)

1. 命令行启动选项 (Command Line Options)

PyMOL 可以通过各种命令行参数启动,这些参数控制其行为和加载的内容。

基本启动命令

命令功能描述示例
pymol启动 PyMOL GUIpymol
pymol -c启动命令行模式(无GUI)pymol -c
pymol -q安静模式启动pymol -q
pymol -e启动后立即执行命令pymol -e "fetch 1crn"
pymol -d "<commands>"启动时执行指定命令pymol -d "fetch 1crn; show cartoon"
pymol -r script.py运行Python脚本pymol -r myscript.py
pymol -l script.pml加载PyMOL脚本pymol -l commands.pml
pymol -u无GUI启动(用于脚本)pymol -u script.pml
pymol -k保持会话打开pymol -k

文件加载选项

命令功能描述示例
pymol file.pdb启动并加载PDB文件pymol protein.pdb
pymol file1.pdb file2.pdb启动并加载多个文件pymol prot1.pdb prot2.pdb
pymol *.pdb加载目录下所有PDB文件pymol structures/*.pdb
pymol -M file.pdb以多模型模式加载pymol -M trajectory.pdb

高级启动选项

命令功能描述示例
pymol -p启用PowerMate支持pymol -p
pymol -i启用内部反馈pymol -i
pymol -s启用安全模式pymol -s
pymol -F全屏模式启动pymol -F
pymol -W <width>设置窗口宽度pymol -W 800
pymol -H <height>设置窗口高度pymol -H 600
pymol -x启用实验性功能pymol -x
pymol -2使用OpenGL2.0pymol -2

批处理模式示例

# 无GUI模式批处理图像生成
pymol -c -d "fetch 1crn; show cartoon; color red; png output.png; quit"# 执行脚本并生成图像
pymol -u -d "run batch_script.py"# 处理多个结构
for pdb in *.pdb; dopymol -c -d "load $pdb; show cartoon; png ${pdb%.pdb}.png; quit"
done# 使用管道
echo "fetch 1crn; show cartoon; png test.png; quit" | pymol -c

2. PyMOL 脚本编写 (Script Writing)

PyMOL 支持两种主要的脚本格式:PyMOL 脚本文件(.pml)和 Python 脚本(.py)。

2.1 PyMOL 脚本文件 (.pml)

PyMOL 脚本文件使用 PyMOL 的原生命令语法。

基本语法规则
# 这是注释
# 命令可以一行一个
fetch 1crn
show cartoon
color red# 也可以用分号分隔多个命令
fetch 1crn; show cartoon; color red# 使用反斜杠续行
show sticks, \resn TRP or resn PHE \or resn TYR# 变量不直接支持,但可以使用Python嵌入
python
stored.my_color = "red"
python end
color $stored.my_color
入门示例 1:基本蛋白质可视化
# basic_visualization.pml
# 基本蛋白质可视化脚本# 加载蛋白质结构
fetch 1crn
# 或者: load protein.pdb# 设置基本显示
hide everything
show cartoon
color cyan, all# 显示配体(如果有)
select ligand, organic
show sticks, ligand
color yellow, ligand# 显示重要残基
select important, resi 10+20+30
show sticks, important
color red, important# 调整视图
center
zoom
orient# 设置漂亮的渲染
set ray_shadow, on
set ambient, 0.2
set direct, 0.8# 保存图像
png beautiful_protein.png, width=1200, height=800, dpi=300
入门示例 2:多结构比较
# structure_comparison.pml
# 多结构比较脚本# 加载两个结构
fetch 1crn, async=0
fetch 1ctf, async=0# 重命名对象
set_name 1crn, structure1
set_name 1ctf, structure2# 对齐结构
align structure2, structure1# 设置显示
hide everything# 结构1显示为卡通,蓝色
show cartoon, structure1
color blue, structure1# 结构2显示为卡通,红色,半透明
show cartoon, structure2
color red, structure2
set cartoon_transparency, 0.5, structure2# 显示对齐区域
select aligned, structure1 and (byres (structure1 within 3.5 of structure2))
show sticks, aligned
color yellow, aligned# 计算并显示RMSD
rms_cur structure2, structure1# 保存结果
save comparison.pse
png comparison.png
入门示例 3:循环处理多个文件
# batch_process.pml
# 批处理多个结构文件python
import os
import glob# 获取所有pdb文件
pdb_files = glob.glob("*.pdb")for pdb_file in pdb_files:# 获取文件名(不含扩展名)base_name = os.path.splitext(pdb_file)[0]# 加载结构cmd.load(pdb_file, base_name)# 设置显示cmd.hide("everything", base_name)cmd.show("cartoon", base_name)cmd.color("cyan", base_name)# 如果有配体,高亮显示cmd.select("ligand", f"{base_name} and organic")if cmd.count_atoms("ligand") > 0:cmd.show("sticks", "ligand")cmd.color("yellow", "ligand")# 调整视图cmd.center(base_name)cmd.orient(base_name)# 保存图像cmd.png(f"{base_name}_processed.png", width=800, height=600)# 删除对象以节省内存cmd.delete(base_name)cmd.delete("ligand")python end

2.2 Python 脚本 (.py)

Python 脚本提供了更强大的编程能力。

基本Python脚本结构
#!/usr/bin/env python
# -*- coding: utf-8 -*-import pymol
from pymol import cmd, stored# 初始化 PyMOL(如果需要)
pymol.finish_launching(['pymol', '-q'])def main():# 你的代码cmd.fetch("1crn")cmd.show("cartoon")cmd.color("red")# 保存图像cmd.png("output.png")if __name__ == "__main__":main()
入门示例 4:高级蛋白质分析脚本
# protein_analysis.py
# 高级蛋白质分析脚本import pymol
from pymol import cmd, stored
import numpy as npdef analyze_protein(pdb_id):"""分析蛋白质结构的函数"""# 加载结构cmd.fetch(pdb_id)# 基本信息chains = cmd.get_chains(pdb_id)print(f"蛋白质 {pdb_id}{len(chains)} 条链: {', '.join(chains)}")# 计算每条链的残基数for chain in chains:residues = cmd.count_atoms(f"{pdb_id} and chain {chain} and name CA")print(f"链 {chain}: {residues} 个残基")# 寻找配体cmd.select("ligands", f"{pdb_id} and organic")if cmd.count_atoms("ligands") > 0:print("发现配体:")stored.ligand_names = []cmd.iterate("ligands", "stored.ligand_names.append(resn)")unique_ligands = list(set(stored.ligand_names))print(f"配体类型: {', '.join(unique_ligands)}")# 计算B-factor统计stored.b_factors = []cmd.iterate_state(1, f"{pdb_id} and name CA", "stored.b_factors.append(b)")if stored.b_factors:mean_b = np.mean(stored.b_factors)std_b = np.std(stored.b_factors)print(f"平均B-factor: {mean_b:.2f} ± {std_b:.2f}")# 生成可视化visualize_structure(pdb_id)return {'chains': chains,'mean_b_factor': mean_b if stored.b_factors else None,'ligands': unique_ligands if cmd.count_atoms("ligands") > 0 else []}def visualize_structure(obj_name):"""生成结构的可视化"""# 基本显示设置cmd.hide("everything", obj_name)cmd.show("cartoon", obj_name)# 按B-factor着色cmd.spectrum("b", "blue_white_red", f"{obj_name} and polymer", minimum=10, maximum=50)# 显示配体if cmd.count_atoms(f"{obj_name} and organic") > 0:cmd.show("sticks", f"{obj_name} and organic")cmd.color("yellow", f"{obj_name} and organic")# 显示金属离子if cmd.count_atoms(f"{obj_name} and metals") > 0:cmd.show("spheres", f"{obj_name} and metals")cmd.color("orange", f"{obj_name} and metals")# 调整视图cmd.center(obj_name)cmd.orient(obj_name)# 设置渲染参数cmd.set("ray_shadow", "on")cmd.set("ambient", 0.2)cmd.set("direct", 0.8)# 保存图像cmd.png(f"{obj_name}_analysis.png", width=1200, height=800, dpi=300)def batch_analyze(pdb_list):"""批量分析多个蛋白质"""results = {}for pdb_id in pdb_list:print(f"\n分析 {pdb_id}...")try:results[pdb_id] = analyze_protein(pdb_id)cmd.delete(pdb_id)  # 清理内存except Exception as e:print(f"分析 {pdb_id} 时出错: {e}")results[pdb_id] = Nonereturn results# 使用示例
if __name__ == "__main__":# 分析单个蛋白质result = analyze_protein("1crn")# 批量分析pdb_list = ["1crn", "1ctf", "2hhb"]batch_results = batch_analyze(pdb_list)# 输出总结print("\n=== 分析总结 ===")for pdb_id, data in batch_results.items():if data:print(f"{pdb_id}: {len(data['chains'])} 条链, {len(data['ligands'])} 种配体")
入门示例 5:创建自定义函数
# custom_functions.py
# 创建自定义PyMOL函数from pymol import cmddef color_by_chain():"""为每条链分配不同颜色"""colors = ['red', 'green', 'blue', 'yellow', 'magenta', 'cyan', 'orange', 'purple']objects = cmd.get_object_list('(all)')for obj in objects:chains = cmd.get_chains(obj)for i, chain in enumerate(chains):color = colors[i % len(colors)]cmd.color(color, f"{obj} and chain {chain}")def show_binding_site(ligand_selection, distance=5.0):"""显示配体结合位点"""# 选择结合位点残基site_name = "binding_site"cmd.select(site_name, f"byres ({ligand_selection} around {distance}) and polymer")# 显示结合位点cmd.show("sticks", site_name)cmd.color("green", site_name)# 显示配体cmd.show("sticks", ligand_selection)cmd.color("yellow", ligand_selection)return site_namedef make_publication_figure():"""制作发表级质量的图像"""# 设置高质量渲染参数cmd.set("ray_shadow", "on")cmd.set("ambient", 0.15)cmd.set("direct", 0.8)cmd.set("reflect", 0.8)cmd.set("specular", 1)cmd.set("shininess", 10)cmd.set("specular_intensity", 0.5)# 抗锯齿cmd.set("antialias", 2)# 深度提示cmd.set("depth_cue", 1)cmd.set("fog_start", 0.4)print("已设置发表级质量参数")def save_session_script(filename="session_recreation.pml"):"""保存重现当前会话的脚本"""with open(filename, 'w') as f:f.write("# 自动生成的会话重现脚本\n\n")# 获取所有对象objects = cmd.get_object_list('(all)')for obj in objects:f.write(f"# 加载对象 {obj}\n")f.write(f"load {obj}.pdb, {obj}\n\n")# 获取当前视图view = cmd.get_view()f.write("# 设置视图\n")f.write(f"set_view {view}\n\n")f.write("# 可以在此添加其他设置...\n")print(f"会话重现脚本已保存到 {filename}")# 将函数注册到PyMOL
cmd.extend("color_by_chain", color_by_chain)
cmd.extend("show_binding_site", show_binding_site)
cmd.extend("make_publication_figure", make_publication_figure)
cmd.extend("save_session_script", save_session_script)# 使用示例
"""
在PyMOL中使用:
color_by_chain
show_binding_site ligand, 4.0
make_publication_figure
save_session_script my_session.pml
"""

脚本调试技巧

# 调试技巧示例# 1. 使用 stored 对象进行调试
stored.debug_info = []
cmd.iterate("all", "stored.debug_info.append((resi, resn, name))")
print(f"找到 {len(stored.debug_info)} 个原子")# 2. 条件断点
def debug_selection(selection):count = cmd.count_atoms(selection)if count == 0:print(f"警告: 选择 '{selection}' 没有找到原子")else:print(f"选择 '{selection}' 包含 {count} 个原子")return count# 3. 错误处理
try:cmd.align("mobile", "target")
except pymol.CmdException as e:print(f"对齐失败: {e}")# 尝试替代方案cmd.super("mobile", "target")# 4. 逐步执行模式
def step_by_step_demo():input("按回车键加载结构...")cmd.fetch("1crn")input("按回车键显示卡通...")cmd.show("cartoon")input("按回车键着色...")cmd.color("red")print("演示完成!")

3. 颜色系统 (Color System)

PyMOL 拥有丰富的颜色系统,包括预定义颜色、RGB 值、颜色方案等。

3.1 预定义颜色

颜色名英文名RGB值示例
red红色[1.0, 0.0, 0.0]color red, chain A
green绿色[0.0, 1.0, 0.0]color green, chain B
blue蓝色[0.0, 0.0, 1.0]color blue, chain C
yellow黄色[1.0, 1.0, 0.0]color yellow, ligand
magenta品红色[1.0, 0.0, 1.0]color magenta, metals
cyan青色[0.0, 1.0, 1.0]color cyan, polymer
white白色[1.0, 1.0, 1.0]color white, all
black黑色[0.0, 0.0, 0.0]color black, carbon
orange橙色[1.0, 0.5, 0.0]color orange, active_site
purple紫色[0.5, 0.0, 0.5]color purple, secondary
graygrey灰色[0.5, 0.5, 0.5]color gray, background
brown棕色[0.65, 0.32, 0.17]color brown, hydrophobic
pink粉色[1.0, 0.75, 0.8]color pink, highlight
lime酸橙色[0.5, 1.0, 0.0]color lime, new_feature
violet紫罗兰色[0.9, 0.0, 0.9]color violet, special

3.2 扩展颜色调色板

颜色名描述RGB值用途
slate石板色[0.5, 0.5, 0.9]蛋白质主链
hotpink热粉色[1.0, 0.0, 0.5]突出显示
firebrick火砖色[0.7, 0.13, 0.13]螺旋结构
chocolate巧克力色[0.82, 0.41, 0.12]疏水区域
salmon鲑鱼色[0.98, 0.5, 0.45]柔和高亮
limegreen酸橙绿[0.2, 0.8, 0.2]活性位点
splitpea豌豆绿[0.52, 0.75, 0.0]环路区域
raspberry树莓色[0.7, 0.3, 0.4]配体
sand沙色[0.72, 0.55, 0.3]中性区域
smudge污迹色[0.55, 0.7, 0.4]表面着色
teal蓝绿色[0.0, 0.5, 0.5]水分子
lightteal浅蓝绿[0.4, 0.7, 0.7]溶剂区域
darksalmon深鲑鱼色[0.91, 0.59, 0.48]温和对比
warmpink暖粉色[0.85, 0.2, 0.5]结合位点
limon柠檬色[0.75, 1.0, 0.25]明亮区域
skyblue天蓝色[0.5, 0.8, 1.0]水通道
purpleblue紫蓝色[0.5, 0.0, 1.0]核酸

3.3 按原子类型的默认颜色

元素颜色名RGB值描述
C (碳)green[0.0, 1.0, 0.0]碳原子
N (氮)blue[0.0, 0.0, 1.0]氮原子
O (氧)red[1.0, 0.0, 0.0]氧原子
H (氢)white[1.0, 1.0, 1.0]氢原子
S (硫)yellow[1.0, 1.0, 0.0]硫原子
P (磷)orange[1.0, 0.5, 0.0]磷原子
F (氟)lightgreen[0.7, 1.0, 0.7]氟原子
Cl (氯)green[0.0, 1.0, 0.0]氯原子
Br (溴)brown[0.65, 0.32, 0.17]溴原子
I (碘)purple[0.5, 0.0, 0.5]碘原子
Fe (铁)orange[1.0, 0.5, 0.0]铁原子
Ca (钙)green[0.0, 1.0, 0.0]钙离子
Mg (镁)forestgreen[0.13, 0.54, 0.13]镁离子
Zn (锌)blue[0.0, 0.0, 1.0]锌离子

3.4 颜色方案和渐变

颜色方案描述使用场景示例
rainbow彩虹色谱序列着色spectrum count, rainbow, polymer
red_white_blue红白蓝渐变双极数据spectrum b, red_white_blue
blue_white_red蓝白红渐变双极数据(相反)spectrum b, blue_white_red
red_yellow_green红黄绿渐变热图着色spectrum q, red_yellow_green
blue_yellow_red蓝黄红渐变温度图spectrum temp, blue_yellow_red
green_red绿红渐变简单双色spectrum data, green_red
blue_red蓝红渐变简单双色spectrum values, blue_red
cyan_magenta青品红渐变高对比度spectrum score, cyan_magenta
yellow_cyan_white黄青白渐变软渐变spectrum field, yellow_cyan_white
purple_white_green紫白绿渐变生物学数据spectrum bio, purple_white_green

3.5 自定义颜色

# 定义自定义颜色
set_color my_red = [0.8, 0.1, 0.1]
set_color my_blue = [0.1, 0.1, 0.8]
set_color my_green = [0.1, 0.8, 0.1]# 使用自定义颜色
color my_red, chain A
color my_blue, chain B# 定义渐变色
set_color light_red = [1.0, 0.7, 0.7]
set_color medium_red = [1.0, 0.3, 0.3]
set_color dark_red = [0.7, 0.0, 0.0]# 创建自定义颜色方案
ramp_new my_gradient, protein, [light_red, medium_red, dark_red]

3.6 颜色实用函数

# 按原子类型着色
util.cba all                    # Color By Atom type
util.cbac all                   # Color By Atom type (Carbon)
util.cbag all                   # Color By Atom type (Gray background)
util.cbaw all                   # Color By Atom type (White background)
util.cbas all                   # Color By Atom type (Slate background)# 按链着色
util.cbc all                    # Color By Chain
util.color_chains all           # 随机链着色# 按二级结构着色
util.cbss all                   # Color By Secondary Structure# 按残基类型着色
util.cbr all                    # Color By Residue type# 深色主题
util.color_deep all

3.7 颜色使用技巧和最佳实践

科学发表的颜色选择
# 色盲友好的颜色组合
set_color cb_red = [0.8, 0.4, 0.0]        # 橙红色
set_color cb_blue = [0.0, 0.6, 0.8]       # 天蓝色
set_color cb_green = [0.0, 0.6, 0.4]      # 蓝绿色
set_color cb_yellow = [0.9, 0.6, 0.0]     # 黄色
set_color cb_purple = [0.8, 0.4, 0.8]     # 紫色
set_color cb_pink = [0.8, 0.6, 0.7]       # 粉色# 高对比度组合(黑白打印友好)
set_color print_black = [0.0, 0.0, 0.0]
set_color print_darkgray = [0.3, 0.3, 0.3]
set_color print_gray = [0.6, 0.6, 0.6]
set_color print_lightgray = [0.8, 0.8, 0.8]# 专业的蛋白质着色方案
color slate, polymer and ss h              # 螺旋 - 石板色
color wheat, polymer and ss s              # 折叠 - 小麦色
color salmon, polymer and ss l             # 环 - 鲑鱼色
按功能区域着色示例
# 活性位点分析着色
select active_site, resi 52+83+119+159+185
select substrate_binding, resi 45+46+47+120+121
select allosteric_site, resi 200+201+202+250+251color red, active_site              # 活性位点 - 红色
color orange, substrate_binding     # 底物结合 - 橙色  
color blue, allosteric_site         # 异构位点 - 蓝色
color gray90, polymer and not (active_site or substrate_binding or allosteric_site)
动态颜色变化
# 创建动态颜色变化
python
import math
for i in range(1, 101):# 计算颜色强度intensity = (math.sin(i * 0.1) + 1) / 2red_val = intensityblue_val = 1 - intensity# 定义颜色cmd.set_color(f"dynamic_{i}", [red_val, 0.5, blue_val])# 应用到特定帧cmd.mdo(i, f"color dynamic_{i}, chain A")
python end

4. 选择原子 (Selection)

命令功能描述示例
select创建一个新的原子选择集select ligand, resn HEM
select_list通过原子索引列表创建选择select_list mysel, [1,5,10,15]
deselect取消当前高亮的选择deselect
delete删除一个已命名的选择集或对象delete ligand
pop删除选择并将其原子合并到前一个选择集select chain A; select resi 10; pop
push将当前选择集压入栈中push current_selection
load_selection从文件中加载选择集load_selection mysel.txt, mymol
save_selection将选择集保存到文件save_selection selection.txt, (resi 10-20)
indicate高亮显示选择的原子indicate (resn LIG)

5. 原子选择语法 (Selection Syntax)

选择语法是 PyMOL 的核心,它允许你精确地定位到分子中的任何部分。

基本选择

语法描述示例
all选择所有原子color red, all
none不选择任何原子show sticks, none
(sele)括号内的选择表达式show spheres, (chain A and resn LIG)
visible选择当前可见的原子select visible_atoms, visible
present选择当前存在的原子(未被删除)count_atoms present
enabled选择启用对象中的原子select enabled_atoms, enabled

按属性选择

语法描述示例
name <atom names>按原子名称选择select CAs, name CA
elem <symbols>按元素符号选择select sulfurs, elem S
resn <residue names>按残基名称选择select waters, resn HOH
resi <residue identifiers>按残基编号选择select r10, resi 10
resi <start>-<end>选择一个范围的残基select loop, resi 10-20
chain <chain identifiers>按链标识符选择select chainA, chain A
segi <segment identifiers>按Segment标识符选择select seg1, segi A1
alt <alternate identifiers>按备用位置标识符选择select altA, alt A
state <state number>按状态号选择select state1, state 1

分子类型选择

语法描述示例
polymer选择聚合物(蛋白质、核酸)hide nonbonded, polymer
organic选择有机分子部分show sticks, organic
inorganic选择无机分子部分show spheres, inorganic
solvent选择溶剂分子hide solvent
hetatm选择杂原子(非标准残基)show spheres, hetatm
hydrogenshydro选择氢原子hide hydro
metals选择金属原子show spheres, metals
donor选择氢键给体color blue, donor
acceptor选择氢键受体color red, acceptor

空间选择

语法描述示例
(sele) around <dist>选择在指定距离内的原子select pocket, (resn LIG) around 3.5
(sele) expand <dist>将选择扩展指定的距离select shell, expand 5
(sele) within <dist> of (sele2)选择距离第二个选择指定距离内的原子select nearby, within 4 of ligand
(sele) beyond <dist> of (sele2)选择距离第二个选择指定距离外的原子select far, beyond 10 of center
(sele) near_to <dist>选择距离小于指定值的原子对select contacts, (chain A near_to 4 of chain B)
byres (sele)扩展选择到整个残基select near_res, byres (ligand around 4)
bymolecule (sele)扩展选择到整个分子select full_mol, bymolecule (resn LIG)
byobject (sele)byobj (sele)扩展选择到整个对象select obj_with_lig, byobj (resn LIG)
bychain (sele)扩展选择到整条链select whole_chain, bychain (resi 100)
bysegi (sele)扩展选择到整个片段select whole_seg, bysegi (chain A)

结构选择

语法描述示例
ss hss H选择螺旋二级结构color red, ss h
ss sss S选择β折叠二级结构color blue, ss s
ss lss L选择环/转角结构color green, ss l
ss ""选择未定义的二级结构color gray, ss ""
backbonebb选择主链原子show cartoon, backbone
sidechainsc选择侧链原子show sticks, sidechain

6. 显示与表示 (Display & Representation)

命令功能描述示例
show以某种表示形式显示选择show cartoon, protein
hide隐藏某种表示形式hide lines, all
asshow的别名as cartoon, chain A
preset应用预设的显示样式preset.pretty(selection="all")
cartoon设置卡通表示的类型cartoon tube, all
set_bond设置键的显示属性set_bond stick_radius, 0.2, all
rebuild重建对象的表示rebuild

表示类型

表示类型描述示例
lines线状表示show lines, organic
sticks棍状表示show sticks, resn TRP
spheres球状(CPK)表示show spheres, hetatm
surface分子表面show surface, all
mesh网格表面show mesh, all
dots点状表面show dots, all
cartoon卡通表示show cartoon, polymer
ribbon带状表示show ribbon, all
nonbonded非键合表示(点)show nonbonded, (elem Cl)
nb_spheres非键合球状表示show nb_spheres, ions
ellipsoids椭球表示(各向异性)show ellipsoids, all
labels标签显示show labels, name CA

7. 颜色 (Coloring)

命令功能描述示例
color为选择的原子上色color red, resn HEM
spectrum按属性进行彩虹色谱着色spectrum b, blue_white_red, minimum=10, maximum=50
spectrum_states跨状态进行光谱着色spectrum_states, 1, 10
color_deep深色主题着色color_deep
rainbow彩虹着色(按残基)rainbow chain A
ramp_new创建颜色渐变对象ramp_new my_ramp, protein, [blue, white, red]
bg_color设置背景颜色bg_color white
set_color定义新颜色set_color my_blue = [0.1, 0.2, 0.8]

实用着色函数

命令功能描述示例
util.cbag按链着色并灰化其余部分util.cbag
util.cbc按链着色util.cbc (all)
util.cbac按链和原子着色util.cbac
util.cba按原子着色util.cba all
util.cbaw按原子着色(白色背景)util.cbaw
util.cbas按原子着色(灰色背景)util.cbas
util.color_chains为每条链随机着色util.color_chains
util.color_deep深色主题util.color_deep
util.cnc按核酸链着色util.cnc

8. 透明度 (Transparency)

命令功能描述示例
set transparency设置全局透明度set transparency, 0.5, all
set surface_transparency设置表面透明度set surface_transparency, 0.2, (all)
set cartoon_transparency设置卡通表示透明度set cartoon_transparency, 0.8, (chain A)
set stick_transparency设置棍状表示透明度set stick_transparency, 0.3
set sphere_transparency设置球状表示透明度set sphere_transparency, 0.4
set mesh_transparency设置网格透明度set mesh_transparency, 0.6
set ribbon_transparency设置带状表示透明度set ribbon_transparency, 0.7

9. 视图与相机 (Viewing & Camera)

命令功能描述示例
zoom缩放到指定的选择zoom (resi 10-20)
center将视图中心置于指定选择center (resn LIG)
orient旋转平移使选择最大化充满屏幕orient (polymer)
clip移动前/后剪裁平面clip near, 5
move移动相机move x, 5
turn旋转相机turn x, 45
rotate围绕轴旋转rotate x, 90
translate平移对象translate [1,0,0], object
rock启动/停止摇滚动画rock
reset重置视图reset
get_view获取当前视图矩阵get_view
set_view设置视图矩阵set_view (...)
scene存储或恢复场景scene F1, store
viewport设置视口大小viewport 800, 600
full_screen切换全屏模式full_screen

10. 文件输入/输出 (File I/O)

命令功能描述示例
load加载各种格式的文件load protein.pdb
fetch从在线数据库下载并加载文件fetch 1crn
save保存分子、map、session等save my_protein.pdb, (chain A)
load_traj加载轨迹文件load_traj traj.dcd, prot.pdb
load_ccp4加载CCP4密度图load_ccp4 map.ccp4
load_cgo加载计算机图形对象load_cgo objects.cgo
load_callback加载回调对象load_callback cb.py
load_coords加载坐标数据load_coords coords.txt, format=xyz
split_states将多状态对象分割成独立对象split_states myobj
export_coords导出坐标export_coords coords.txt, (name CA)

文件格式支持

格式描述示例
.pdbProtein Data Bank格式load protein.pdb
.pdb.gz压缩的PDB文件load protein.pdb.gz
.cifmmCIF格式load structure.cif
.mol2Tripos MOL2格式load ligand.mol2
.sdfStructure Data File格式load compounds.sdf
.molMDL Molfile格式load molecule.mol
.xyzXYZ坐标格式load coords.xyz
.ccp4CCP4密度图格式load_ccp4 density.map
.dcdCHARMM轨迹格式load_traj traj.dcd, ref.pdb
.trr/.xtcGROMACS轨迹格式load_traj traj.xtc, ref.gro

11. 图片/动画导出 (Image/Movie Export)

命令功能描述示例
png保存当前视图为PNG图片png my_image.png
ray使用光线追踪引擎渲染图像ray 1200, 800
draw使用OpenGL渲染图像draw 800, 600
copy_image复制图像到剪贴板copy_image
mpng保存多帧PNG序列mpng movie_frames
mclear清空电影内存mclear
mset设置多状态对象的行为mset 1 -50
mdo为特定帧设置命令mdo 10: color red, chain A
frame设置当前帧frame 10
mplay播放动画mplay
mstop停止动画mstop
rewind倒回到第一帧rewind
forward前进到最后一帧forward
movie.produce生成动画文件movie.produce movie.mpg
movie.add_state_loop添加状态循环movie.add_state_loop 1, 30
movie.add_state_sweep添加状态扫描movie.add_state_sweep 1, 30, 1
movie.add_nutate添加章动动画movie.add_nutate 30, 15
movie.add_roll添加滚动动画movie.add_roll 30, 1, 360
movie.add_rock添加摇摆动画movie.add_rock 30, 30

12. 结构对齐与叠合 (Structural Alignment)

命令功能描述示例
align序列对齐后结构叠合align mobile_protein, target_protein
super结构叠合(更强大)super mobile, target, cycles=5
cealignCE结构对齐算法cealign mobile, target
tmalignTM-score结构对齐tmalign mobile, target
pair_fit对指定原子对进行拟合pair_fit (mobile and name CA), (target and name CA)
fit简单的RMS拟合fit mobile, target
rms计算RMS偏差rms mobile, target
rms_cur计算当前RMS偏差rms_cur mobile, target
intra_fit对象内状态间拟合intra_fit protein, 1
intra_rms计算对象内状态间RMSintra_rms protein, 1
intra_rms_cur计算当前对象内状态间RMSintra_rms_cur protein, 1
alignto将多个对象对齐到一个目标alignto target
extra_fit全局对齐多个结构extra_fit

高级对齐选项

命令功能描述示例
align (with options)带参数的对齐align mobile, target, cycles=0, transform=0
super (with options)带参数的结构叠合super mobile, target, cutoff=2.0, cycles=5
cealign (with options)CE对齐带参数cealign mobile, target, transform=1, object=aln

13. 测量与分析 (Measurement & Analysis)

命令功能描述示例
distance创建距离测量对象distance d1, (resi 10 and name CA), (resi 50 and name CA)
angle创建角度测量对象angle a1, (resi 10/CA), (resi 10/C), (resi 11/N)
dihedral创建二面角测量对象dihedral t1, (pk1), (pk2), (pk3), (pk4)
get_distance获取两原子间距离get_distance (resi 10 and name CA), (resi 20 and name CA)
get_angle获取三原子间角度get_angle (pk1), (pk2), (pk3)
get_dihedral获取四原子间二面角get_dihedral (pk1), (pk2), (pk3), (pk4)
find_pairs寻找原子对find_pairs (chain A), (chain B), cutoff=4.0
get_area计算溶剂可及表面积get_area (all)
get_volume计算体积get_volume (all)
count_atoms计算选择中的原子数量count_atoms (resn HOH)
count_states计算对象中的状态数count_states protein
get_model获取模型坐标get_model (name CA and resi 10)
get_coords获取坐标数组get_coords (name CA)
get_extent获取选择的空间范围get_extent (all)
centerofmass计算质心centerofmass (chain A)
get_chains获取链标识符列表get_chains protein
get_phipsi获取phi/psi角度get_phipsi (chain A)
phi_psi显示phi/psi角度图phi_psi (chain A)

高级分析

命令功能描述示例
contact生成接触图contact contact_obj, (chain A), (chain B), 4.0
get_raw_distances获取原始距离矩阵get_raw_distances (name CA), (name CA), 2.0, 20.0
get_symmetry获取晶体对称信息get_symmetry protein
get_object_list获取对象列表get_object_list
get_names获取名称列表get_names objects
identify识别原子identify (pk1)
index获取原子索引index (name CA)

14. 分子编辑与构建 (Molecular Editing)

命令功能描述示例
edit进入编辑模式edit (resi 10 and name CA)
bond创建化学键bond (resi 10 and name SG), (resi 20 and name SG)
unbond删除化学键unbond (resi 10 and name SG), (resi 20 and name SG)
remove删除原子或选择remove hydro
h_add添加氢原子h_add
h_fix修复氢原子h_fix (resn LIG)
h_fill填充氢原子h_fill
attach附着原子或基团attach H, 1, 1
replace替换原子replace (resi 10 and name CB), C, 4
fuse融合环结构fuse (resi 10), (resi 11), mode=1
undo撤销上次编辑undo
redo重做编辑redo
protect保护原子不被编辑protect (chain A)
deprotect取消保护deprotect (chain A)
fix_chemistry修复化学结构fix_chemistry (resn LIG)

分子构建

命令功能描述示例
fragment加载分子片段fragment ala
pseudoatom创建伪原子pseudoatom center, (chain A)
copy复制选择copy new_obj, (chain A)
symexp扩展对称相关分子symexp sym, protein, (protein), 5.0
create基于选择创建新对象create ligand_obj, (resn LIG)
extract提取选择到新对象extract new_chain, chain B

结构修改

命令功能描述示例
alter修改原子属性alter (resi 10), resn="ALA"
alter_state修改坐标alter_state 1, (resi 10), x=x+5.0
sort排序原子sort protein
update更新坐标update protein, coords
invert翻转立体中心invert
sculpt_activate激活雕刻模式sculpt_activate protein
sculpt_deactivate停用雕刻模式sculpt_deactivate
sculpt_iterate执行雕刻迭代sculpt_iterate protein, cycles=100
clean清理结构clean (resn LIG)

15. 对象操作 (Object Control)

命令功能描述示例
create基于选择创建新分子对象create ligand_obj, (resn LIG and chain A)
extractcreate的别名extract new_chain, chain B
delete删除对象或选择delete my_protein
rename重命名对象或选择rename my_protein, protein_1
set_name改变对象名称set_name old_name, new_name
group将多个对象分组group complex, protein, ligand
ungroup解散组ungroup complex
order改变对象在列表中的顺序order *, yes
enable启用对象enable ligand
disable禁用对象disable ligand
toggle切换对象启用状态toggle ligand
isolate隔离显示选择的对象isolate chain A
copy复制对象copy protein_copy, protein
move移动对象move x, 5, protein
matrix_copy复制变换矩阵matrix_copy source, target
matrix_reset重置变换矩阵matrix_reset protein

对象状态管理

命令功能描述示例
create (multi-state)创建多状态对象create traj, (protein), 1, 100
load_traj加载轨迹为多状态对象load_traj trajectory.dcd, protein.pdb
split_states分割多状态对象split_states trajectory
join_states合并状态到对象join_states combined, obj1, obj2
get_object_state获取对象状态信息get_object_state protein

16. 坐标变换 (Coordinate Transformation)

命令功能描述示例
translate平移对象translate [1,0,0], protein
rotate旋转对象rotate x, 90, protein
transform_object应用4x4变换矩阵transform_object protein, matrix
transform_selection对选择应用变换transform_selection (chain A), matrix
matrix_copy复制变换矩阵matrix_copy source_obj, target_obj
matrix_reset重置对象变换矩阵matrix_reset protein
origin设置旋转中心origin (resn LIG)
reset_origin重置旋转中心reset_origin

坐标操作

命令功能描述示例
alter_state修改特定状态的坐标alter_state 1, (chain A), x=x+10
get_coords获取坐标数组coords = get_coords("name CA")
load_coords加载坐标到对象load_coords coords_array, selection
push_undo推送到撤销栈push_undo protein, 1

17. 表面与体积 (Surface & Volume)

命令功能描述示例
surface显示分子表面show surface, protein
dots显示点状表面show dots, protein
mesh显示网格表面show mesh, protein
isosurface创建等值面isosurface surf1, map_obj, 1.0
isodot创建等值点表面isodot dots1, map_obj, 1.0
isomesh创建等值网格isomesh mesh1, map_obj, 1.0
gradient计算密度图梯度gradient grad_map, density_map
get_area计算表面积get_area (protein)
get_volume计算体积get_volume (protein)

密度图操作

命令功能描述示例
load_ccp4加载CCP4密度图load_ccp4 density.map
map_new创建新的密度图map_new mymap, protein
map_set设置密度图属性map_set mymap, 1, 1.0
map_double加倍密度图分辨率map_double mymap
map_halve减半密度图分辨率map_halve mymap
map_trim修剪密度图map_trim mymap, protein, 2.0
volume创建体积对象volume vol1, density_map
volume_color设置体积颜色volume_color vol1, blue_white_red

表面属性

命令功能描述示例
set surface_quality设置表面质量set surface_quality, 2
set surface_type设置表面类型set surface_type, 1
set surface_mode设置表面模式set surface_mode, 3
set mesh_quality设置网格质量set mesh_quality, 2
set mesh_radius设置网格半径set mesh_radius, 1.4

18. 动画与状态 (Animation & States)

命令功能描述示例
frame设置当前帧frame 10
get_frame获取当前帧号get_frame
count_frames计算总帧数count_frames
mset设置电影mset 1 x100
mclear清空电影mclear
mdo电影帧命令mdo 10: color red, chain A
mplay播放动画mplay
mstop停止播放mstop
mpng保存电影帧为PNGmpng movie_
mmatrix保存变换矩阵动画mmatrix
rewind回到第一帧rewind
forward前进到最后一帧forward
middle跳到中间帧middle
ending跳到结束帧ending
backward向后播放backward

状态操作

命令功能描述示例
set_frame设置特定状态的帧set_frame 1, 10
get_state获取当前状态get_state
count_states计算状态数count_states protein
create (state)创建特定状态的对象create snapshot, protein, state=5

动画制作

命令功能描述示例
movie.add_state_loop添加状态循环movie.add_state_loop 1, 50, 1
movie.add_state_sweep添加状态扫描movie.add_state_sweep 1, 50, 1, 1
movie.add_nutate添加章动movie.add_nutate 60, 15
movie.add_roll添加滚动movie.add_roll 60, 1, 360
movie.add_rock添加摆动movie.add_rock 60, 30
movie.add_scene_loop添加场景循环movie.add_scene_loop scenes, 30

19. 设置 (Settings)

PyMOL 有数百个可配置参数,控制着软件的各个方面。这里按功能分类列出所有重要的设置项。

19.1 设置命令语法

命令功能描述示例
set <key>, <value>设置全局参数set cartoon_fancy_helices, 1
set <key>, <value>, <selection>为特定选择设置参数set sphere_scale, 2.0, (resn LIG)
get <key>获取设置的值get surface_quality
unset <key>重置为默认值unset cartoon_fancy_helices
get_setting_legacy <key>获取传统格式设置get_setting_legacy stick_radius

19.2 显示与表示设置 (Display & Representation)

基本显示控制
设置项默认值功能描述示例
auto_show_lines1自动显示线条表示set auto_show_lines, 0
auto_show_spheres1自动显示球体表示set auto_show_spheres, 0
auto_show_nonbonded1自动显示非键合表示set auto_show_nonbonded, 0
auto_hide_selections1自动隐藏选择set auto_hide_selections, 0
auto_zoom1加载时自动缩放set auto_zoom, 0
auto_overlay-1自动叠加模式set auto_overlay, 0
线条设置 (Lines)
设置项默认值功能描述示例
line_width1.0线条宽度set line_width, 2.0
line_smooth1线条平滑set line_smooth, 0
line_radius0.0线条半径(圆柱形线条)set line_radius, 0.05
dash_width4.0虚线线条宽度set dash_width, 2.0
dash_gap0.15虚线间隙set dash_gap, 0.1
dash_length0.35虚线长度set dash_length, 0.5
dash_round_ends1虚线圆形端点set dash_round_ends, 0
棍状表示设置 (Sticks)
设置项默认值功能描述示例
stick_radius0.25棍状表示半径set stick_radius, 0.1
stick_h_scale1.0氢原子棍状缩放set stick_h_scale, 0.5
stick_quality8棍状表示质量set stick_quality, 16
stick_overlap0.2棍状重叠距离set stick_overlap, 0.0
stick_nub0.7棍状末端长度set stick_nub, 0.5
stick_valence_scale1.25价键棍状缩放set stick_valence_scale, 1.5
stick_transparency0.0棍状透明度set stick_transparency, 0.3
stick_ball0球棍模式set stick_ball, 1
stick_ball_ratio1.9球棍比例set stick_ball_ratio, 2.5
stick_fixed_radius0.0固定半径模式set stick_fixed_radius, 0.15
球体设置 (Spheres)
设置项默认值功能描述示例
sphere_radius1.0球体半径缩放set sphere_radius, 0.5
sphere_scale1.0球体整体缩放set sphere_scale, 2.0
sphere_quality1球体质量set sphere_quality, 2
sphere_transparency0.0球体透明度set sphere_transparency, 0.4
sphere_point_max_size10.0点状球体最大尺寸set sphere_point_max_size, 20
sphere_point_size1.0点状球体尺寸set sphere_point_size, 2.0
sphere_mode0球体模式set sphere_mode, 1
sphere_solvent1溶剂球体显示set sphere_solvent, 0
卡通设置 (Cartoon)
设置项默认值功能描述示例
cartoon_sampling7卡通采样精度set cartoon_sampling, 14
cartoon_loop_radius0.2环区半径set cartoon_loop_radius, 0.3
cartoon_tube_radius0.3管状半径set cartoon_tube_radius, 0.5
cartoon_flat_sheets1平面折叠set cartoon_flat_sheets, 0
cartoon_smooth_loops1平滑环区set cartoon_smooth_loops, 0
cartoon_dumbbell_length1.6哑铃长度set cartoon_dumbbell_length, 2.0
cartoon_dumbbell_width0.16哑铃宽度set cartoon_dumbbell_width, 0.2
cartoon_dumbbell_radius0.02哑铃半径set cartoon_dumbbell_radius, 0.05
cartoon_fancy_helices0精美螺旋set cartoon_fancy_helices, 1
cartoon_fancy_sheets0精美折叠set cartoon_fancy_sheets, 1
cartoon_helix_radius2.3螺旋半径set cartoon_helix_radius, 3.0
cartoon_oval_length1.2椭圆长度set cartoon_oval_length, 1.5
cartoon_oval_width0.24椭圆宽度set cartoon_oval_width, 0.3
cartoon_oval_quality10椭圆质量set cartoon_oval_quality, 15
cartoon_rect_length1.4矩形长度set cartoon_rect_length, 1.8
cartoon_rect_width0.3矩形宽度set cartoon_rect_width, 0.4
cartoon_ring_mode0环模式set cartoon_ring_mode, 3
cartoon_ring_width0.22环宽度set cartoon_ring_width, 0.3
cartoon_ring_color-1环颜色set cartoon_ring_color, 1
cartoon_ring_finder2环识别器set cartoon_ring_finder, 1
cartoon_ring_transparency0.0环透明度set cartoon_ring_transparency, 0.5
cartoon_transparency0.0卡通透明度set cartoon_transparency, 0.2
cartoon_side_chain_helper0侧链辅助set cartoon_side_chain_helper, 1
cartoon_nucleic_acid_mode0核酸模式set cartoon_nucleic_acid_mode, 1
cartoon_ladder_mode1梯子模式set cartoon_ladder_mode, 0
cartoon_ladder_radius0.25梯子半径set cartoon_ladder_radius, 0.3
cartoon_ladder_color-1梯子颜色set cartoon_ladder_color, 1
cartoon_highlight_color-1高亮颜色set cartoon_highlight_color, 1
cartoon_putty_radius1.0putty半径set cartoon_putty_radius, 2.0
cartoon_putty_quality10putty质量set cartoon_putty_quality, 15
cartoon_putty_range5.0putty范围set cartoon_putty_range, 10.0
cartoon_putty_scale_min1.0putty最小缩放set cartoon_putty_scale_min, 0.5
cartoon_putty_scale_max2.0putty最大缩放set cartoon_putty_scale_max, 3.0
cartoon_putty_scale_power1.0putty缩放幂次set cartoon_putty_scale_power, 2.0
cartoon_trace_atoms0追踪原子set cartoon_trace_atoms, 1
cartoon_tube_cap2管状端帽set cartoon_tube_cap, 1
cartoon_loop_cap2环端帽set cartoon_loop_cap, 1
cartoon_discrete_colors0离散颜色set cartoon_discrete_colors, 1
带状设置 (Ribbon)
设置项默认值功能描述示例
ribbon_width3.0带状宽度set ribbon_width, 4.0
ribbon_radius0.0带状半径set ribbon_radius, 0.1
ribbon_power2.0带状幂次set ribbon_power, 1.5
ribbon_power_b0.5带状B因子幂次set ribbon_power_b, 1.0
ribbon_sampling1带状采样set ribbon_sampling, 2
ribbon_smooth1带状平滑set ribbon_smooth, 0
ribbon_side_chain_helper0带状侧链辅助set ribbon_side_chain_helper, 1
ribbon_transparency0.0带状透明度set ribbon_transparency, 0.3
ribbon_trace_atoms0带状追踪原子set ribbon_trace_atoms, 1
ribbon_nucleic_acid_mode0带状核酸模式set ribbon_nucleic_acid_mode, 1
表面设置 (Surface)
设置项默认值功能描述示例
surface_quality1表面质量set surface_quality, 2
surface_proximity1表面临近度set surface_proximity, 0
surface_type0表面类型set surface_type, 1
surface_mode0表面模式set surface_mode, 3
surface_carve_cutoff4.5表面雕刻截止set surface_carve_cutoff, 3.0
surface_carve_selection1表面雕刻选择set surface_carve_selection, 0
surface_carve_state0表面雕刻状态set surface_carve_state, 1
surface_carve_normal_cutoff0.0表面雕刻法线截止set surface_carve_normal_cutoff, -0.1
surface_clear_cutoff0.0表面清除截止set surface_clear_cutoff, 1.8
surface_trim_cutoff1.8表面修剪截止set surface_trim_cutoff, 2.5
surface_trim_factor1.0表面修剪因子set surface_trim_factor, 1.5
surface_circumscribe0表面外接set surface_circumscribe, 1
surface_residue_cutoff2.5表面残基截止set surface_residue_cutoff, 3.0
surface_use_shader0使用着色器set surface_use_shader, 1
surface_color-1表面颜色set surface_color, 1
surface_ramp_above_mode1表面渐变上模式set surface_ramp_above_mode, 2
surface_transparency0.0表面透明度set surface_transparency, 0.5
surface_negative_visible1负表面可见set surface_negative_visible, 0
surface_negative_color-1负表面颜色set surface_negative_color, 1
surface_cavity_mode0表面腔模式set surface_cavity_mode, 1
surface_cavity_radius10.0表面腔半径set surface_cavity_radius, 15.0
surface_cavity_cutoff3.0表面腔截止set surface_cavity_cutoff, 4.0
surface_solvent1表面溶剂set surface_solvent, 0
solvent_radius1.4溶剂半径set solvent_radius, 1.2
网格设置 (Mesh)
设置项默认值功能描述示例
mesh_quality2网格质量set mesh_quality, 1
mesh_width1.0网格线宽set mesh_width, 2.0
mesh_radius0.02网格半径set mesh_radius, 0.05
mesh_color-1网格颜色set mesh_color, 1
mesh_skip0网格跳过set mesh_skip, 1
mesh_transparency0.0网格透明度set mesh_transparency, 0.3
mesh_negative_visible1负网格可见set mesh_negative_visible, 0
mesh_negative_color-1负网格颜色set mesh_negative_color, 1
mesh_mode0网格模式set mesh_mode, 1
mesh_carve_cutoff4.5网格雕刻截止set mesh_carve_cutoff, 3.0
mesh_carve_selection1网格雕刻选择set mesh_carve_selection, 0
mesh_carve_state0网格雕刻状态set mesh_carve_state, 1
点状设置 (Dots)
设置项默认值功能描述示例
dot_radius0.0点半径set dot_radius, 0.1
dot_density2点密度set dot_density, 4
dot_mode0点模式set dot_mode, 1
dot_solvent1点溶剂set dot_solvent, 0
dot_color-1点颜色set dot_color, 1
dot_hydrogens1点氢原子set dot_hydrogens, 0
dot_lighting1点光照set dot_lighting, 0
dot_normals1点法线set dot_normals, 0
标签设置 (Labels)
设置项默认值功能描述示例
label_font_id5标签字体IDset label_font_id, 7
label_size14标签大小set label_size, 20
label_position[0,0,0]标签位置set label_position, [2,2,2]
label_color-1标签颜色set label_color, 1
label_outline_color1标签轮廓颜色set label_outline_color, 0
label_shadow_mode0标签阴影模式set label_shadow_mode, 1
label_distance_digits1距离标签小数位set label_distance_digits, 2
label_angle_digits1角度标签小数位set label_angle_digits, 2
label_dihedral_digits1二面角标签小数位set label_dihedral_digits, 2
label_connector1标签连接器set label_connector, 0
label_connector_width3.0连接器宽度set label_connector_width, 5.0
label_connector_color-1连接器颜色set label_connector_color, 1
label_connector_mode0连接器模式set label_connector_mode, 1
label_placement_mode0标签放置模式set label_placement_mode, 1
label_multiline_spacing1.0多行间距set label_multiline_spacing, 1.5
label_screen_point0.15屏幕点大小set label_screen_point, 0.2

19.3 渲染与光照设置 (Rendering & Lighting)

光线追踪设置 (Ray Tracing)
设置项默认值功能描述示例
ray_trace_mode0光线追踪模式set ray_trace_mode, 1
ray_texture0光线纹理set ray_texture, 2
ray_texture_settings0纹理设置set ray_texture_settings, 1
ray_improvements1光线改进set ray_improvements, 0
ray_default_renderer0默认渲染器set ray_default_renderer, 1
ray_max_passes1最大通道数set ray_max_passes, 4
ray_transparency_threshold0.0透明度阈值set ray_transparency_threshold, 0.05
ray_transparency_oblique1.0斜透明度set ray_transparency_oblique, 0.8
ray_transparency_oblique_power5.0斜透明度幂次set ray_transparency_oblique_power, 3.0
ray_transparency_contrast1.0透明度对比set ray_transparency_contrast, 1.5
ray_transparency_shadows1透明度阴影set ray_transparency_shadows, 0
ray_transparency_specular0.4透明度镜面set ray_transparency_specular, 0.6
ray_legacy_lighting0传统光照set ray_legacy_lighting, 1
ray_orthoscopic0正交投影set ray_orthoscopic, 1
ray_pixel_scale1.0像素缩放set ray_pixel_scale, 2.0
ray_blend_colors1混合颜色set ray_blend_colors, 0
ray_color_ramps1颜色渐变set ray_color_ramps, 0
ray_hint_camera1相机提示set ray_hint_camera, 0
ray_hint_shadow1阴影提示set ray_hint_shadow, 0
ray_clip_shadows1剪裁阴影set ray_clip_shadows, 0
ray_opaque_background1不透明背景set ray_opaque_background, 0
光照设置 (Lighting)
设置项默认值功能描述示例
ambient0.1环境光set ambient, 0.2
direct0.45直射光set direct, 0.8
reflect0.45反射光set reflect, 0.6
light[-0.4, -0.4, -1]光源位置set light, [-0.2, -0.2, -1]
light2[0.3, -0.3, 1]第二光源set light2, [0.5, -0.5, 1]
light3[0.3, 0.4, 0.2]第三光源set light3, [0.2, 0.3, 0.5]
light_count2光源数量set light_count, 3
shininess55光泽度set shininess, 100
specular1.0镜面反射强度set specular, 0.8
specular_intensity0.5镜面反射亮度set specular_intensity, 0.7
power1.0功率set power, 1.2
spec_power1.0镜面功率set spec_power, 0.8
spec_direct0.0直射镜面set spec_direct, 0.2
spec_direct_power1.0直射镜面功率set spec_direct_power, 0.8
spec_count1镜面计数set spec_count, 2
two_sided_lighting0双面光照set two_sided_lighting, 1
阴影设置 (Shadows)
设置项默认值功能描述示例
ray_shadow1光线阴影set ray_shadow, 0
ray_shadow_decay_factor0.1阴影衰减因子set ray_shadow_decay_factor, 0.2
ray_shadow_decay_range2.0阴影衰减范围set ray_shadow_decay_range, 3.0
ray_shadow_fudge0.1阴影模糊set ray_shadow_fudge, 0.05
深度与雾效设置 (Depth & Fog)
设置项默认值功能描述示例
depth_cue1深度提示set depth_cue, 0
fog1雾效开关set fog, 0
fog_start0.4雾效开始距离set fog_start, 0.3

19.4 颜色与材质设置 (Color & Material)

基本颜色设置
设置项默认值功能描述示例
bg_rgb[0,0,0]背景RGBset bg_rgb, [1,1,1]
bg_rgb_top[0,0,0]背景顶部RGBset bg_rgb_top, [0.5,0.5,1]
bg_rgb_bottom[0,0,0]背景底部RGBset bg_rgb_bottom, [0,0,0.5]
bg_gradient0背景渐变set bg_gradient, 1
颜色混合
设置项默认值功能描述示例
cartoon_color-1卡通颜色set cartoon_color, 1
ribbon_color-1带状颜色set ribbon_color, 1
line_color-1线条颜色set line_color, 1
nonbonded_color-1非键合颜色set nonbonded_color, 1

19.5 透明度设置 (Transparency)

设置项默认值功能描述示例
transparency0.0全局透明度set transparency, 0.3
transparency_mode0透明度模式set transparency_mode, 2
transparency_global_sort0全局透明度排序set transparency_global_sort, 1
transparency_picking_mode0透明度选择模式set transparency_picking_mode, 1

19.6 几何与测量设置 (Geometry & Measurements)

距离测量
设置项默认值功能描述示例
dash_color-1虚线颜色set dash_color, 1
angle_color-1角度颜色set angle_color, 1
dihedral_color-1二面角颜色set dihedral_color, 1
distance_exclusion1.5距离排除set distance_exclusion, 2.0
angle_size1.0角度大小set angle_size, 1.5
angle_label_position5.0角度标签位置set angle_label_position, 3.0
dihedral_size0.3二面角大小set dihedral_size, 0.5
dihedral_label_position5.0二面角标签位置set dihedral_label_position, 3.0
键合几何
设置项默认值功能描述示例
valence1显示价键set valence, 0
valence_mode0价键模式set valence_mode, 1
valence_size0.06价键大小set valence_size, 0.1
half_bonds0半键显示set half_bonds, 1
all_states0所有状态set all_states, 1
static_singletons1静态单原子set static_singletons, 0

19.7 性能与质量设置 (Performance & Quality)

渲染质量
设置项默认值功能描述示例
antialias0抗锯齿set antialias, 2
multisample0多重采样set multisample, 1
max_triangles50000最大三角形数set max_triangles, 100000
max_ups100最大更新数set max_ups, 50
min_mesh_spacing0.6最小网格间距set min_mesh_spacing, 0.3
mesh_grid_max80网格最大值set mesh_grid_max, 160
缓存设置
设置项默认值功能描述示例
cache_memory100缓存内存(MB)set cache_memory, 200
cache_frames0缓存帧set cache_frames, 1
defer_builds_mode0延迟构建模式set defer_builds_mode, 3
defer_updates0延迟更新set defer_updates, 1
suspend_updates0暂停更新set suspend_updates, 1
draw_mode0绘制模式set draw_mode, -2
max_threads1最大线程数set max_threads, 4

19.8 交互与界面设置 (Interaction & Interface)

鼠标控制
设置项默认值功能描述示例
mouse_limit1000鼠标限制set mouse_limit, 2000
mouse_scale1.0鼠标缩放set mouse_scale, 0.5
mouse_restart_movie_delay2.0鼠标重启电影延迟set mouse_restart_movie_delay, 1.0
mouse_selection_mode0鼠标选择模式set mouse_selection_mode, 1
mouse_z_scale1.0鼠标Z轴缩放set mouse_z_scale, 0.5
选择设置
设置项默认值功能描述示例
active_selections1活跃选择set active_selections, 0
auto_indicate_flags0自动指示标志set auto_indicate_flags, 1
auto_number_selections0自动编号选择set auto_number_selections, 1
auto_classify_atoms1自动分类原子set auto_classify_atoms, 0
auto_remove_hydrogens1自动移除氢set auto_remove_hydrogens, 0
视图控制
设置项默认值功能描述示例
auto_copy_images0自动复制图像set auto_copy_images, 1
auto_dss1自动二级结构set auto_dss, 0
auto_defer_builds1自动延迟构建set auto_defer_builds, 0
auto_sculpt0自动雕刻set auto_sculpt, 1
sculpting0雕刻模式set sculpting, 1
sculpt_vdw_scale1.0雕刻vdW缩放set sculpt_vdw_scale, 0.8
sculpt_vdw_scale141.0雕刻vdW 1-4缩放set sculpt_vdw_scale14, 0.5
sculpt_vdw_weight1.0雕刻vdW权重set sculpt_vdw_weight, 0.5
sculpt_vdw_weight141.0雕刻vdW 1-4权重set sculpt_vdw_weight14, 0.1

19.9 动画与电影设置 (Animation & Movie)

设置项默认值功能描述示例
movie_fps24.0电影帧率set movie_fps, 30.0
movie_delay40电影延迟(ms)set movie_delay, 20
movie_loop1电影循环set movie_loop, 0
movie_rock1电影摇摆set movie_rock, 0
movie_quality80电影质量set movie_quality, 100
movie_animate_by_frame1按帧动画set movie_animate_by_frame, 0
movie_panel1电影面板set movie_panel, 0
movie_panel_row_height20面板行高set movie_panel_row_height, 25
movie_auto_store0自动存储set movie_auto_store, 1
movie_auto_interpolate1自动插值set movie_auto_interpolate, 0
sweep_mode0扫描模式set sweep_mode, 1
sweep_phase0.0扫描相位set sweep_phase, 180.0
sweep_speed1.0扫描速度set sweep_speed, 2.0
rock0摇摆set rock, 1

19.10 文件I/O设置 (File I/O Settings)

设置项默认值功能描述示例
pdb_honor_model_number1遵循PDB模型号set pdb_honor_model_number, 0
pdb_insertions_go_first0PDB插入优先set pdb_insertions_go_first, 1
pdb_hetatm_guess_valences1HETATM猜测价态set pdb_hetatm_guess_valences, 0
pdb_use_ter_records1使用TER记录set pdb_use_ter_records, 0
pdb_literal_names0PDB文字名称set pdb_literal_names, 1
pdb_conect_all0PDB连接所有set pdb_conect_all, 1
pdb_truncate_residue_name0截断残基名set pdb_truncate_residue_name, 1
pdb_echo_tags0回显PDB标签set pdb_echo_tags, 1
cif_keepinmemory0CIF保持内存set cif_keepinmemory, 1
cif_use_auth1CIF使用认证set cif_use_auth, 0
fetch_path“”获取路径set fetch_path, "/tmp/pymol"
fetch_host“files.rcsb.org”获取主机set fetch_host, "www.ebi.ac.uk"

19.11 调试与日志设置 (Debug & Logging)

设置项默认值功能描述示例
logging0日志记录set logging, 1
log_box_selections0记录框选择set log_box_selections, 1
log_conformations0记录构象set log_conformations, 1
robust_logs0强健日志set robust_logs, 1
dump_floats1转储浮点数set dump_floats, 3
dump_binary0转储二进制set dump_binary, 1
debug_pick0调试选择set debug_pick, 1
verbose1详细模式set verbose, 0
feedback“enable”反馈模式feedback disable, all, warnings

19.12 立体显示设置 (Stereo Display)

设置项默认值功能描述示例
stereo0立体模式set stereo, 1
stereo_angle23.0立体角度set stereo_angle, 30.0
stereo_shift0.23立体偏移set stereo_shift, 0.3
stereo_double_pump_mono0双泵单色set stereo_double_pump_mono, 1
stereo_mode0立体模式set stereo_mode, 1

19.13 编辑器设置 (Editor Settings)

设置项默认值功能描述示例
editor_label_fragments1编辑器标签片段set editor_label_fragments, 0
editor_auto_dihedral1编辑器自动二面角set editor_auto_dihedral, 0
editor_auto_measure1编辑器自动测量set editor_auto_measure, 0
editor_auto_origin1编辑器自动原点set editor_auto_origin, 0

19.14 高级渲染设置 (Advanced Rendering)

设置项默认值功能描述示例
field_of_view20.0视野角度set field_of_view, 30.0
reflect_power1.0反射功率set reflect_power, 2.0
chromadepth0色深度set chromadepth, 1
cone_quality10圆锥质量set cone_quality, 20
cylinder_shader1圆柱着色器set cylinder_shader, 0
default_2fofc_map_rep“mesh”默认2fofc图表示set default_2fofc_map_rep, "surface"
default_fofc_map_rep“mesh”默认fofc图表示set default_fofc_map_rep, "dots"

19.15 设置使用技巧

批量设置模板
# 高质量发表图像设置
python
settings_hq = {'ray_shadow': 'on','ambient': 0.1,'direct': 0.8,'reflect': 0.5,'specular': 1,'shininess': 10,'antialias': 2,'cartoon_fancy_helices': 1,'cartoon_fancy_sheets': 1,'surface_quality': 2
}for key, value in settings_hq.items():cmd.set(key, value)
python end# 快速预览设置
python
settings_fast = {'cartoon_sampling': 1,'surface_quality': 0,'mesh_quality': 1,'ray_shadow': 'off','antialias': 0
}for key, value in settings_fast.items():cmd.set(key, value)
python end
设置配置文件
# 保存当前设置到文件
def save_settings(filename):"""保存当前PyMOL设置到文件"""import pymolsettings = {}# 获取所有重要设置important_settings = ['ambient', 'direct', 'reflect', 'specular', 'shininess','ray_shadow', 'antialias', 'surface_quality', 'cartoon_fancy_helices','cartoon_fancy_sheets', 'stick_radius', 'sphere_scale', 'label_size']for setting in important_settings:try:settings[setting] = cmd.get(setting)except:passwith open(filename, 'w') as f:for key, value in settings.items():f.write(f"set {key}, {value}\n")def load_settings(filename):"""从文件加载PyMOL设置"""with open(filename, 'r') as f:for line in f:line = line.strip()if line and not line.startswith('#'):cmd.do(line)# 注册函数
cmd.extend("save_settings", save_settings)
cmd.extend("load_settings", load_settings)

20. 内置工具/向导 (Built-in Tools/Wizards)

PyMOL 提供了许多向导来简化复杂操作。

向导命令

命令功能描述示例
wizard启动指定向导wizard measurement
wizard measurement启动测量向导wizard measurement
wizard mutagenesis启动突变向导wizard mutagenesis
wizard sculpting启动雕刻向导wizard sculpting
wizard density启动密度拟合向导wizard density
wizard demo启动演示向导wizard demo
wizard label启动标签向导wizard label
wizard undo撤销向导wizard undo

预设样式

命令功能描述示例
preset.simple简单预设preset.simple("protein")
preset.pretty美观预设preset.pretty("all")
preset.publication发表质量预设preset.publication("all")
preset.default默认预设preset.default("all")
preset.technical技术预设preset.technical("all")
preset.ligand_sites配体结合位点预设preset.ligand_sites("protein")
preset.ball_and_stick球棍模型预设preset.ball_and_stick("organic")

实用工具函数

函数功能描述示例
util.mass_align批量对齐util.mass_align("name CA")
util.chainbow彩虹链着色util.chainbow("all")
util.ray_shadows设置阴影util.ray_shadows("medium")
util.performance性能优化util.performance(100)
util.protein_vacuum_esp真空静电势util.protein_vacuum_esp("protein")

21. 迭代与批处理 (Iteration & Batch Processing)

命令功能描述示例
iterate对选择中的原子执行Python表达式iterate (name CA), print(f"{resn}-{resi}")
iterate_state对特定状态执行迭代iterate_state 1, (name CA), stored.coords.append([x,y,z])
alter修改原子属性alter (resi 10), resn="ALA"
alter_state修改特定状态的属性alter_state 1, (chain A), x=x+10
for_each对每个对象执行命令for_each obj in cmd.get_object_list(): cmd.color("red", obj)

存储变量

变量描述示例
stored全局存储对象stored.coords = []
stored.list存储列表iterate (name CA), stored.list.append(resi)
stored.sum存储数值stored.sum = 0

批处理示例

操作示例
获取所有CA坐标stored.coords=[]; iterate (name CA), stored.coords.append([x,y,z])
统计残基数量stored.residues=[]; iterate (name CA), stored.residues.append(resi); print(len(set(stored.residues)))
计算平均B-factorstored.b=[]; iterate all, stored.b.append(b); print(sum(stored.b)/len(stored.b))

22. Python API - cmd 模块命令 (Python API Commands)

PyMOL 的 Python API 通过 cmd 模块提供了所有命令行功能的编程接口。以下是完整的 cmd. 开头的命令列表:

22.1 文件操作 (File Operations)

命令功能描述参数示例Python示例
cmd.load()加载分子文件filename, object, state, format, finish, discrete, quiet, multiplex, zoom, partial, mimiccmd.load("protein.pdb", "my_protein")
cmd.fetch()从数据库获取结构code, name, state, finish, discrete, multiplex, zoom, type, async, path, file, quietcmd.fetch("1crn", "crambin")
cmd.save()保存文件filename, selection, state, format, ref_object, ref_state, quietcmd.save("output.pdb", "chain A")
cmd.load_traj()加载轨迹文件filename, object, state, format, interval, average, start, stop, max, selection, image, shift, plugin_arg, quietcmd.load_traj("traj.dcd", "protein")
cmd.load_ccp4()加载CCP4密度图filename, object, state, quiet, zoomcmd.load_ccp4("density.map", "my_map")
cmd.load_coords()加载坐标数据coords, selection, statecmd.load_coords(coord_array, "protein")
cmd.export_coords()导出坐标filename, selection, state, formatcmd.export_coords("coords.txt", "name CA")
cmd.load_png()加载PNG图像filename, quietcmd.load_png("image.png")

22.2 对象操作 (Object Operations)

命令功能描述参数示例Python示例
cmd.create()创建新对象name, selection, source_state, target_state, discrete, zoom, quiet, singletons, copy_properties, extractcmd.create("ligand", "resn LIG")
cmd.delete()删除对象或选择namecmd.delete("unwanted_object")
cmd.copy()复制对象target, source, source_state, target_state, zoom, quietcmd.copy("protein_copy", "protein")
cmd.rename()重命名对象old_name, new_namecmd.rename("old_name", "new_name")
cmd.set_name()设置对象名称old_name, new_namecmd.set_name("temp", "final")
cmd.group()创建对象组name, members, actioncmd.group("complex", "protein ligand")
cmd.ungroup()解散组name, quietcmd.ungroup("complex")
cmd.enable()启用对象name, parentscmd.enable("protein")
cmd.disable()禁用对象name, parentscmd.disable("protein")
cmd.split_states()分割多状态对象object, prefix, first, last, quietcmd.split_states("trajectory")
cmd.join_states()合并状态target, source, first, last, quietcmd.join_states("combined", "traj1 traj2")

22.3 选择操作 (Selection Operations)

命令功能描述参数示例Python示例
cmd.select()创建选择name, selection, enable, quiet, merge, state, domaincmd.select("active_site", "resi 52+83+119")
cmd.select_list()通过列表选择name, selection, object, state, modecmd.select_list("my_atoms", [1,5,10,15])
cmd.deselect()取消选择cmd.deselect()
cmd.indicate()指示选择selectioncmd.indicate("ligand")
cmd.pop()弹出选择type, exactcmd.pop()
cmd.push()推入选择cmd.push()

22.4 显示与表示 (Display & Representation)

命令功能描述参数示例Python示例
cmd.show()显示表示representation, selection, quietcmd.show("cartoon", "polymer")
cmd.hide()隐藏表示representation, selection, quietcmd.hide("lines", "all")
cmd.show_as()显示为指定表示representation, selection, quietcmd.show_as("sticks", "organic")
cmd.cartoon()设置卡通类型type, selectioncmd.cartoon("tube", "chain A")
cmd.set_bond()设置键属性key, value, selection, state, updates, log, quietcmd.set_bond("stick_radius", 0.2, "all")
cmd.rebuild()重建表示selection, representationcmd.rebuild("all", "cartoon")

22.5 颜色操作 (Color Operations)

命令功能描述参数示例Python示例
cmd.color()着色color, selection, quiet, flagscmd.color("red", "chain A")
cmd.set_color()定义颜色name, color, modecmd.set_color("my_blue", [0,0,1])
cmd.get_color_tuple()获取颜色元组color, modecmd.get_color_tuple("red")
cmd.spectrum()光谱着色expression, palette, selection, minimum, maximum, byres, quietcmd.spectrum("b", "blue_red", "polymer")
cmd.rainbow()彩虹着色selection, modecmd.rainbow("chain A")
cmd.bg_color()设置背景色colorcmd.bg_color("white")
cmd.ramp_new()创建颜色渐变name, obj_name, range, color, state, selection, beyond, within, sigma, zero, quietcmd.ramp_new("my_ramp", "protein", [0,50], "blue_red")

22.6 测量命令 (Measurement Commands)

命令功能描述参数示例Python示例
cmd.distance()创建距离对象name, selection1, selection2, cutoff, mode, zoom, width, length, gap, label, quiet, reset, state, state1, state2cmd.distance("d1", "resi 10/CA", "resi 20/CA")
cmd.angle()创建角度对象name, selection1, selection2, selection3, mode, zoom, width, length, gap, label, quiet, reset, statecmd.angle("a1", "pk1", "pk2", "pk3")
cmd.dihedral()创建二面角对象name, selection1, selection2, selection3, selection4, mode, zoom, width, length, gap, label, quiet, reset, statecmd.dihedral("d1", "pk1", "pk2", "pk3", "pk4")
cmd.get_distance()获取距离selection1, selection2, state1, state2cmd.get_distance("resi 10/CA", "resi 20/CA")
cmd.get_angle()获取角度selection1, selection2, selection3, state1, state2cmd.get_angle("pk1", "pk2", "pk3")
cmd.get_dihedral()获取二面角selection1, selection2, selection3, selection4, state1, state2cmd.get_dihedral("pk1", "pk2", "pk3", "pk4")
cmd.get_area()计算表面积selection, state, load_bcmd.get_area("protein")
cmd.get_volume()计算体积selection, statecmd.get_volume("protein")

22.7 结构对齐 (Structural Alignment)

命令功能描述参数示例Python示例
cmd.align()序列对齐结构叠合mobile, target, cutoff, cycles, gap, extend, max_gap, object, matrix, mobile_state, target_state, quiet, max_skip, transform, resetcmd.align("mobile", "target")
cmd.super()结构叠合mobile, target, cutoff, cycles, gap, extend, max_gap, object, matrix, mobile_state, target_state, quiet, max_skip, transform, resetcmd.super("mobile", "target", cycles=5)
cmd.cealign()CE算法对齐mobile, target, d0, d1, window, gap_max, transform, objectcmd.cealign("mobile", "target")
cmd.fit()拟合结构mobile, target, mobile_state, target_state, quiet, matchmaker, cutoff, cycles, objectcmd.fit("mobile", "target")
cmd.rms()计算RMSmobile, target, mobile_state, target_state, quiet, matchmaker, cutoff, cycles, objectcmd.rms("mobile", "target")
cmd.rms_cur()计算当前RMSmobile, target, mobile_state, target_state, matchmaker, cutoff, cycles, quietcmd.rms_cur("mobile", "target")
cmd.pair_fit()原子对拟合selection1, selection2, selection3, selection4, ...cmd.pair_fit("mobile//CA", "target//CA")

22.8 视图控制 (View Control)

命令功能描述参数示例Python示例
cmd.zoom()缩放视图selection, buffer, state, complete, animate, quietcmd.zoom("chain A", 5.0)
cmd.center()居中视图selection, state, origin, animate, quietcmd.center("ligand")
cmd.orient()定向视图selection, state, animate, quietcmd.orient("polymer")
cmd.turn()旋转视图axis, anglecmd.turn("x", 90)
cmd.move()移动视图axis, distancecmd.move("z", 10)
cmd.rotate()旋转对象axis, angle, selection, state, camera, object, origincmd.rotate("y", 45, "protein")
cmd.translate()平移对象vector, selection, state, camera, objectcmd.translate([1,0,0], "protein")
cmd.get_view()获取视图矩阵output, quietview = cmd.get_view()
cmd.set_view()设置视图矩阵view, quiet, animate, handcmd.set_view(view)
cmd.reset()重置视图objectcmd.reset()
cmd.clip()设置剪裁平面mode, distance, selection, statecmd.clip("near", 5)

22.9 图像与动画 (Image & Animation)

命令功能描述参数示例Python示例
cmd.png()保存PNG图像filename, width, height, dpi, ray, quiet, prior, formatcmd.png("image.png", 1200, 800)
cmd.ray()光线追踪渲染width, height, angle, shift, clip, quiet, async, antialiascmd.ray(1200, 800)
cmd.draw()OpenGL渲染width, height, antialias, quietcmd.draw(800, 600)
cmd.frame()设置帧号frame, quietcmd.frame(10)
cmd.mset()设置电影specification, quietcmd.mset("1 x100")
cmd.mdo()电影帧命令frame, commandcmd.mdo(10, "color red, chain A")
cmd.mpng()保存电影帧prefix, first, last, preserve, modal, mode, quiet, width, height, antialiascmd.mpng("movie_")
cmd.mplay()播放动画quietcmd.mplay()
cmd.mstop()停止动画quietcmd.mstop()
cmd.mclear()清空电影quietcmd.mclear()

22.10 分析与信息 (Analysis & Information)

命令功能描述参数示例Python示例
cmd.count_atoms()计算原子数selection, quietcmd.count_atoms("protein")
cmd.count_states()计算状态数selection, quietcmd.count_states("protein")
cmd.get_model()获取模型对象selection, state, ref_object, ref_statemodel = cmd.get_model("name CA")
cmd.get_coords()获取坐标数组selection, state, quietcoords = cmd.get_coords("name CA")
cmd.get_extent()获取空间范围selection, stateextent = cmd.get_extent("all")
cmd.get_object_list()获取对象列表selectionobjects = cmd.get_object_list()
cmd.get_names()获取名称列表type, enabled_only, selectionnames = cmd.get_names("objects")
cmd.get_chains()获取链列表selection, statechains = cmd.get_chains("protein")
cmd.get_phipsi()获取phi/psi角selection, stateangles = cmd.get_phipsi("chain A")
cmd.identify()识别原子selection, modecmd.identify("pk1")
cmd.index()获取原子索引selection, stateindices = cmd.index("name CA")

22.11 设置与配置 (Settings & Configuration)

命令功能描述参数示例Python示例
cmd.set()设置参数key, value, selection, state, updates, log, quietcmd.set("cartoon_fancy_helices", 1)
cmd.get()获取设置值key, selection, statevalue = cmd.get("surface_quality")
cmd.unset()重置设置key, selection, state, updates, log, quietcmd.unset("cartoon_fancy_helices")
cmd.get_setting_legacy()获取传统设置key, object, statecmd.get_setting_legacy("stick_radius")
cmd.set_bond()设置键属性key, value, selection, state, updates, log, quietcmd.set_bond("stick_radius", 0.2, "all")

22.12 编辑操作 (Editing Operations)

命令功能描述参数示例Python示例
cmd.alter()修改原子属性selection, expression, read_only, space, state, quietcmd.alter("resi 10", "resn='ALA'")
cmd.alter_state()修改坐标state, selection, expression, read_only, space, quietcmd.alter_state(1, "chain A", "x=x+10")
cmd.iterate()遍历原子selection, expression, read_only, space, state, quietcmd.iterate("name CA", "print(resn, resi)")
cmd.iterate_state()遍历状态state, selection, expression, read_only, space, quietcmd.iterate_state(1, "name CA", "stored.coords.append([x,y,z])")
cmd.remove()删除原子selection, quietcmd.remove("hydro")
cmd.bond()创建键selection1, selection2, order, mode, quietcmd.bond("resi 10/SG", "resi 20/SG")
cmd.unbond()删除键selection1, selection2, quietcmd.unbond("resi 10/SG", "resi 20/SG")
cmd.h_add()添加氢selection, state, legacy, quietcmd.h_add("polymer")

22.13 表面操作 (Surface Operations)

命令功能描述参数示例Python示例
cmd.isosurface()创建等值面name, map, level, selection, buffer, state, carve, source_state, quietcmd.isosurface("surf1", "map1", 1.0)
cmd.isomesh()创建等值网格name, map, level, selection, buffer, state, carve, source_state, quietcmd.isomesh("mesh1", "map1", 1.0)
cmd.isodot()创建等值点name, map, level, selection, buffer, state, carve, source_state, quietcmd.isodot("dots1", "map1", 1.0)
cmd.volume()创建体积对象name, map, ramp, selection, buffer, state, carve, source_state, quietcmd.volume("vol1", "map1")

22.14 实用工具 (Utilities)

命令功能描述参数示例Python示例
cmd.quit()退出PyMOLcodecmd.quit()
cmd.reinitialize()重新初始化whatcmd.reinitialize()
cmd.refresh()刷新显示cmd.refresh()
cmd.sync()同步显示timeout, pollcmd.sync()
cmd.do()执行命令command, echo, flushcmd.do("show cartoon")
cmd.extend()扩展命令name, functioncmd.extend("mycommand", my_function)
cmd.alias()创建别名name, commandcmd.alias("cc", "color cyan")
cmd.print_help()打印帮助commandcmd.print_help("align")

23. 其他命令 (Miscellaneous)

系统命令

命令功能描述示例
quit退出PyMOLquit
reinitialize重新初始化PyMOLreinitialize
cls清空命令历史窗口cls
refresh刷新显示refresh
sync同步显示sync
feedback设置反馈级别feedback enable, all, actions
cache缓存控制cache enable

信息与帮助

命令功能描述示例
help获取命令帮助help select
apropos搜索帮助主题apropos alignment
print打印信息print("Hello PyMOL")
show_as显示对象表示类型show_as cartoon, protein
get_version获取PyMOL版本get_version
system执行系统命令system ls

别名与宏

命令功能描述示例
alias创建命令别名alias bigsphere set sphere_scale, 2
extend扩展命令cmd.extend("mycommand", my_function)
do执行命令字符串do("show cartoon")
@ <file>执行脚本文件@myscript.pml
run <file>运行Python脚本run myscript.py

会话管理

命令功能描述示例
save <file>.pse保存会话save my_session.pse
load <file>.pse加载会话load my_session.pse
log_open打开日志log_open commands.log
log_close关闭日志log_close
log记录命令log color red, all

高级功能

命令功能描述示例
cgo计算机图形对象cmd.load_cgo(cgo_data, "my_cgo")
callback回调对象cmd.load_callback(callback_obj, "my_callback")
button鼠标按键映射button +, None, +, (resn LIG)
python执行Python代码python exec("import math")
sync同步多个PyMOL实例sync

24. 常见使用场景速查 (Quick Reference for Common Tasks)

24.1 基础操作

任务命令组合说明
快速加载并可视化蛋白质fetch 1crn; hide lines; show cartoon; color cyan获取结构,隐藏线条,显示卡通,着色
加载本地PDB文件load protein.pdb; center; zoom加载文件并调整视图
显示配体结合位点select ligand, organic; select site, byres (ligand around 5); show sticks, site or ligand; color yellow, ligand; color green, site选择配体和结合位点,显示棍状模型
按链着色hide lines; show cartoon; util.cbc隐藏线条,显示卡通,按链着色
制作发表质量图像set ray_shadow, on; set ambient, 0.2; set direct, 0.8; ray 1200, 800; png high_quality.png设置光影参数并高分辨率渲染

24.2 结构分析

任务命令组合说明
结构对齐比较align mobile, target; rms_cur mobile, target对齐结构并计算RMSD
多结构叠合super prot1, prot2; super prot3, prot2; color red, prot1; color blue, prot2; color green, prot3将多个结构叠合到参考结构上
测量距离和角度distance d1, (resi 10/CA), (resi 20/CA); angle a1, (resi 10/CA), (resi 10/C), (resi 11/N)创建距离和角度测量对象
氢键分析select donors, (elem n,o and (neighbor hydro)); select acceptors, (elem o or (elem n and not (neighbor hydro))); distance hbonds, donors, acceptors, 3.5寻找并显示氢键
表面疏水性分析show surface; spectrum b, blue_white_red; set surface_color, blue, (name c*); set surface_color, red, (elem n+o)显示表面并按疏水性着色

24.3 蛋白质可视化

任务命令组合说明
二级结构着色color red, ss h; color yellow, ss s; color green, ss l螺旋红色,折叠黄色,环绿色
显示活性位点select active, resi 52+83+119; show sticks, active; color red, active; show surface, protein; set transparency, 0.5突出显示活性位点残基
疏水核心可视化select hydrophobic, resn ala+ile+leu+met+phe+trp+tyr+val; color orange, hydrophobic; show sticks, hydrophobic选择并显示疏水残基
表面静电势show surface; ramp_new e_lvl, protein, [-10, 0, 10]; set surface_color, e_lvl创建静电势表面着色
蛋白质域分离select domain1, resi 1-100; select domain2, resi 101-200; color blue, domain1; color red, domain2按结构域着色

24.4 配体分析

任务命令组合说明
配体结合位点分析select ligand, organic; select pocket, byres (ligand around 4); show surface, pocket; color yellow, ligand; show sticks, pocket or ligand显示配体及其结合口袋
药物结合模式select drug, resn LIG; select contacts, (byres (drug around 4)) and polymer; show sticks, drug or contacts; color magenta, drug; util.cbag contacts分析药物-蛋白质相互作用
金属配位select metal, metals; select coordinated, (byres (metal around 3)) and polymer; show sticks, coordinated; show spheres, metal; distance coord, metal, coordinated, 3.0显示金属配位环境

24.5 动画制作

任务命令组合说明
简单旋转动画mset 1 x60; util.mrock创建60帧的摇摆动画
结构变化动画mset 1 x30; mdo 1: load conf1.pdb; mdo 30: load conf2.pdb; movie.add_state_sweep(1,30)展示构象变化
多状态轨迹动画load_traj trajectory.dcd, protein.pdb; mset 1 -100; mplay播放分子动力学轨迹

24.6 数据导出

任务命令组合说明
批量生成图像python for obj in cmd.get_object_list(): cmd.orient(obj); cmd.png(f"{obj}.png") python end为每个对象生成图像
导出坐标数据save_selection site.txt, (ligand around 5); export_coords coords.txt, (name CA)保存选择和坐标数据
生成电影文件mset 1 x120; util.mrock; mpng movie_; movie.produce movie.mp4制作MP4动画文件

24.7 高级分析

任务命令组合说明
蛋白质表面分析show surface; get_area protein; ramp_new hydro, protein, [1.9, 0, -1.9], [red, white, blue]计算表面积并按疏水性着色
构象集合分析alignto reference; rms_cur conf1, reference; rms_cur conf2, reference对齐多个构象并计算偏差
接触图生成contact contacts, (chain A), (chain B), 4.0; show dots, contacts生成链间接触图
B因子分析spectrum b, blue_white_red, polymer, minimum=10, maximum=50; show cartoon; set cartoon_putty, 1按B因子着色并设置putty模式

24.8 批处理脚本模板

基本结构分析脚本
# 批量分析多个PDB文件
python
pdb_codes = ["1crn", "2hhb", "3rub"]
for code in pdb_codes:cmd.fetch(code)cmd.hide("everything", code)cmd.show("cartoon", code)cmd.color("cyan", code)cmd.orient(code)cmd.png(f"{code}_cartoon.png")chains = cmd.get_chains(code)print(f"{code} has chains: {', '.join(chains)}")cmd.delete(code)
python end
配体结合位点分析
# 自动化配体分析
load complex.pdb
select ligand, organic
if cmd.count_atoms("ligand") > 0:select pocket, byres (ligand around 5) and polymershow sticks, ligand or pocketcolor yellow, ligandcolor green, pocketdistance hbonds, (ligand and acceptor), (pocket and donor), 3.5distance hbonds2, (ligand and donor), (pocket and acceptor), 3.5center ligandzoom ligand, 10png ligand_binding_site.png
endif
多结构比较脚本
# 比较多个同源结构
python
structures = ["1abc", "2def", "3ghi"]
reference = structures[0]
cmd.fetch(reference)
cmd.color("blue", reference)for i, struct in enumerate(structures[1:], 1):cmd.fetch(struct)result = cmd.align(struct, reference)rmsd = result[0]print(f"{struct} vs {reference}: RMSD = {rmsd:.2f} Å")colors = ["red", "green", "yellow", "orange"]cmd.color(colors[i-1], struct)cmd.hide("everything")
cmd.show("cartoon", "all")
cmd.orient("all")
cmd.png("structure_comparison.png")
python end
电子密度拟合分析
# 密度图拟合质量分析
python
def analyze_density_fit(obj_name, map_name, threshold=1.0):"""分析结构与电子密度的拟合质量"""# 创建不同sigma水平的等值面for sigma in [1.0, 2.0, 3.0]:mesh_name = f"mesh_{sigma}sigma"cmd.isomesh(mesh_name, map_name, sigma)cmd.color("blue", mesh_name)cmd.set("mesh_width", 0.5, mesh_name)# 检查原子周围的密度cmd.select("low_density", f"({obj_name}) and not (({obj_name}) within 1.5 of {map_name})")if cmd.count_atoms("low_density") > 0:cmd.show("spheres", "low_density")cmd.color("red", "low_density")print(f"发现 {cmd.count_atoms('low_density')} 个低密度原子")return cmd.count_atoms("low_density")# 使用示例
load_ccp4 2fofc.map
load structure.pdb
analyze_density_fit("structure", "2fofc", 1.0)
python end

24.9 常用设置组合

用途设置命令说明
高质量渲染set ray_shadow, on; set ambient, 0.1; set direct, 0.8; set reflect, 0.5; set specular, 1; set shininess, 10专业级光影效果
快速预览set ray_shadow, off; set ambient, 0.4; set direct, 0.6; set cartoon_sampling, 1加快渲染速度
色盲友好set_color cb_red, [0.8,0.4,0]; set_color cb_blue, [0,0.6,0.8]; set_color cb_green, [0,0.6,0.4]色盲可辨的颜色
黑色背景优化bg_color black; set ray_opaque_background, off; set ambient, 0.3; set direct, 0.7适合深色背景
白色背景优化bg_color white; set ray_opaque_background, on; set ambient, 0.2; set direct, 0.8适合浅色背景
立体显示set stereo, 1; set stereo_angle, 23; set stereo_shift, 0.23立体3D显示
透明度优化set transparency_mode, 2; set two_sided_lighting, on更好的透明效果
动画流畅度set movie_fps, 30; set cache_frames, on; set movie_quality, 100高质量动画设置

24.10 错误处理与调试

常见错误及解决方案
错误情况可能原因解决方案
SelectionError: Invalid selection选择语法错误检查选择语法,使用 count_atoms 验证
CmdException: Unable to open file文件路径错误检查文件路径和权限
图像渲染失败内存不足或设置错误降低分辨率,检查渲染设置
对齐失败结构差异太大尝试使用 super 或手动选择对齐区域
颜色不显示对象被禁用或隐藏使用 enableshow 命令
调试脚本模板
# PyMOL 脚本调试模板
def debug_selection(selection_string):"""调试选择字符串"""try:count = cmd.count_atoms(selection_string)if count == 0:print(f"WARNING: Selection '{selection_string}' is empty")else:print(f"Selection '{selection_string}' contains {count} atoms")return countexcept Exception as e:print(f"ERROR in selection '{selection_string}': {e}")return 0def safe_load(filename, object_name=None):"""安全加载文件"""try:if object_name:cmd.load(filename, object_name)else:cmd.load(filename)print(f"Successfully loaded {filename}")return Trueexcept Exception as e:print(f"Failed to load {filename}: {e}")return Falsedef check_object_exists(obj_name):"""检查对象是否存在"""objects = cmd.get_object_list()if obj_name in objects:print(f"Object '{obj_name}' exists")return Trueelse:print(f"Object '{obj_name}' not found. Available objects: {objects}")return False# 使用示例
if check_object_exists("protein"):debug_selection("chain A")debug_selection("resn LIG")

24.11 性能优化技巧

优化目标方法命令示例
加快加载速度禁用自动缩放和完成set auto_zoom, off; set auto_show_lines, off
减少内存使用及时删除不需要的对象delete unused_object; reinitialize orphans
提高渲染速度降低表面质量set surface_quality, 0; set cartoon_sampling, 1
优化大分子显示使用简化表示show cartoon; hide lines; set cartoon_smooth_loops, off
批处理优化禁用GUI更新set defer_builds_mode, 3; set defer_updates, 1

24.12 自定义函数库

结构分析函数
def analyze_structure(obj_name):"""全面分析蛋白质结构"""if not cmd.count_atoms(obj_name):print(f"Object {obj_name} not found!")return None# 基本信息chains = cmd.get_chains(obj_name)total_atoms = cmd.count_atoms(obj_name)total_residues = cmd.count_atoms(f"{obj_name} and name CA")# 二级结构统计helices = cmd.count_atoms(f"{obj_name} and ss h and name CA")sheets = cmd.count_atoms(f"{obj_name} and ss s and name CA")loops = cmd.count_atoms(f"{obj_name} and ss l and name CA")# 配体检测cmd.select("ligands_temp", f"{obj_name} and organic")ligand_count = cmd.count_atoms("ligands_temp")cmd.delete("ligands_temp")# 金属离子metal_count = cmd.count_atoms(f"{obj_name} and metals")# 结果报告report = {'chains': len(chains),'chain_ids': chains,'total_atoms': total_atoms,'total_residues': total_residues,'helices': helices,'sheets': sheets,'loops': loops,'ligands': ligand_count,'metals': metal_count}print(f"\n=== Structure Analysis: {obj_name} ===")print(f"Chains: {report['chains']} ({', '.join(chains)})")print(f"Total atoms: {report['total_atoms']}")print(f"Total residues: {report['total_residues']}")print(f"Secondary structure: {helices}H + {sheets}E + {loops}L")print(f"Ligands: {report['ligands']} atoms")print(f"Metal ions: {report['metals']} atoms")return reportdef compare_structures(obj1, obj2):"""比较两个结构"""# 对齐并计算RMSDalign_result = cmd.align(obj1, obj2)rmsd = align_result[0]aligned_atoms = align_result[1]# 获取基本信息info1 = analyze_structure(obj1)info2 = analyze_structure(obj2)print(f"\n=== Structure Comparison ===")print(f"RMSD: {rmsd:.2f} Å ({aligned_atoms} atoms aligned)")print(f"Residue difference: {abs(info1['total_residues'] - info2['total_residues'])}")print(f"Chain difference: {abs(info1['chains'] - info2['chains'])}")return {'rmsd': rmsd,'aligned_atoms': aligned_atoms,'structures': [info1, info2]}# 注册函数到PyMOL
cmd.extend("analyze_structure", analyze_structure)
cmd.extend("compare_structures", compare_structures)
可视化增强函数
def publication_ready(obj_name, view_type="cartoon"):"""制作发表级质量的可视化"""# 基本显示设置cmd.hide("everything", obj_name)cmd.show(view_type, obj_name)# 高质量渲染设置cmd.set("ray_shadow", "on")cmd.set("ambient", 0.1)cmd.set("direct", 0.8)cmd.set("reflect", 0.6)cmd.set("specular", 1)cmd.set("shininess", 10)cmd.set("antialias", 2)# 卡通样式优化if view_type == "cartoon":cmd.set("cartoon_fancy_helices", 1)cmd.set("cartoon_fancy_sheets", 1)cmd.set("cartoon_side_chain_helper", 1)# 表面质量优化cmd.set("surface_quality", 2)cmd.set("mesh_quality", 2)print(f"Applied publication settings to {obj_name}")def highlight_binding_site(protein, ligand, distance=5.0):"""突出显示结合位点"""site_name = f"{ligand}_binding_site"# 选择结合位点cmd.select(site_name, f"byres ({ligand} around {distance}) and {protein}")# 设置显示cmd.hide("everything")cmd.show("cartoon", protein)cmd.show("sticks", f"{site_name} or {ligand}")# 着色cmd.color("cyan", protein)cmd.color("yellow", ligand)cmd.color("green", site_name)# 调整视图cmd.center(ligand)cmd.zoom(ligand, 8)print(f"Highlighted binding site for {ligand}")return site_namedef rainbow_by_chain(obj_name):"""按链进行彩虹着色"""chains = cmd.get_chains(obj_name)colors = ['red', 'orange', 'yellow', 'green', 'cyan', 'blue', 'purple', 'magenta']for i, chain in enumerate(chains):color = colors[i % len(colors)]cmd.color(color, f"{obj_name} and chain {chain}")print(f"Chain {chain}: {color}")# 注册函数
cmd.extend("publication_ready", publication_ready)
cmd.extend("highlight_binding_site", highlight_binding_site)
cmd.extend("rainbow_by_chain", rainbow_by_chain)

24.13 常用选择器快速参考

选择器类型语法示例说明
残基范围resi start-endresi 10-20选择残基10到20
多个残基resi id1+id2+id3resi 10+15+20选择特定残基
原子名称name atom1+atom2name CA+CB+CG选择特定原子
元素类型elem symbolelem N+O选择氮和氧原子
距离选择sele around distligand around 55Å范围内的原子
残基扩展byres (selection)byres (ligand around 4)扩展到完整残基
链扩展bychain (selection)bychain (resi 100)扩展到整条链
二级结构ss typess h+s螺旋和折叠
组合选择(sel1) and (sel2)(chain A) and (ss h)逻辑组合
排除选择sele and not (excl)polymer and not hydro排除氢原子的聚合物

24.14 配置文件模板

PyMOL 启动配置 (.pymolrc)
# PyMOL 个人配置文件
# 放置在用户主目录下的 .pymolrc 文件中# 基本显示设置
cmd.set("depth_cue", 0)
cmd.set("ray_shadow", 1)
cmd.set("ambient", 0.2)
cmd.set("direct", 0.8)# 背景和颜色
cmd.bg_color("white")
cmd.set("ray_opaque_background", 1)# 卡通显示优化
cmd.set("cartoon_fancy_helices", 1)
cmd.set("cartoon_fancy_sheets", 1)
cmd.set("cartoon_side_chain_helper", 1)# 性能设置
cmd.set("max_threads", 4)
cmd.set("cache_frames", 1)# 自定义别名
cmd.alias("cc", "color cyan")
cmd.alias("cs", "color salmon")
cmd.alias("hc", "hide cartoon")
cmd.alias("sc", "show cartoon")
cmd.alias("hl", "hide lines")
cmd.alias("sl", "show lines")
cmd.alias("hs", "hide sticks")
cmd.alias("ss", "show sticks")# 自定义函数
def quick_protein():"""快速蛋白质显示"""cmd.hide("everything")cmd.show("cartoon")cmd.color("cyan")cmd.orient()def quick_ligand():"""快速配体显示"""cmd.select("ligand", "organic")cmd.show("sticks", "ligand")cmd.color("yellow", "ligand")cmd.center("ligand")cmd.extend("qp", quick_protein)
cmd.extend("ql", quick_ligand)print("Personal PyMOL configuration loaded successfully!")

24.15 故障排除指南

问题类型症状可能原因解决方案
加载失败文件无法打开路径错误、权限问题检查文件路径,确认文件存在和可读
显示异常结构不可见对象被禁用、表示被隐藏enable object_name; show cartoon
颜色问题颜色不变化选择为空、颜色已被覆盖count_atoms 检查选择
对齐失败无法对齐结构结构差异太大、选择不当尝试 super 命令或手动选择
内存不足PyMOL 崩溃或卡顿结构太大、设置不当简化显示、清理不需要的对象
渲染问题图像质量差设置不当、分辨率太低调整光线追踪设置,提高分辨率
脚本错误Python 语法错误代码错误、缩进问题检查语法,使用 try-except
选择错误选择语法无效语法错误、对象不存在检查选择语法,确认对象存在

24.16 资源和进阶学习

官方资源
  • PyMOL Wiki: https://pymolwiki.org/
  • PyMOL 官方文档: https://pymol.org/documentation/
  • PyMOL 命令参考: https://pymolwiki.org/index.php/Category:Commands
学习教程
  • PyMOL 基础教程: 从安装到基本操作
  • 高级可视化技巧: 复杂场景制作
  • 脚本编程指南: Python API 深入学习
  • 结构生物学应用: 实际研究案例
扩展工具
  • ChimeraX: 另一个强大的分子可视化软件
  • VMD: 分子动力学可视化专用
  • Avogadro: 分子编辑和建模
  • Open3DALIGN: 结构对齐工具
文件格式支持
  • PDB/mmCIF: 蛋白质结构
  • MOL2/SDF: 小分子化合物
  • CCP4/MTZ: 电子密度图
  • DCD/XTC: 分子动力学轨迹
  • PSE: PyMOL 会话文件

结语

本指南涵盖了 PyMOL 的核心功能和高级应用,从基本的命令行操作到复杂的 Python 脚本编程。PyMOL 作为结构生物学研究的重要工具,其强大的功能需要通过实践来掌握。

建议学习路径:

  1. 基础操作: 掌握文件加载、显示控制、视图操作
  2. 选择语法: 熟练使用各种选择器进行精确操作
  3. 可视化技巧: 学习着色、表示、场景设置
  4. 脚本编程: 掌握 Python API 进行自动化操作
  5. 高级应用: 结合具体研究需求进行深入应用

记住,最好的学习方法是在实际项目中应用这些命令和技巧。随着经验的积累,你将能够创造出专业级的分子可视化作品。


文章转载自:

http://HRpXOYqW.Lbbrw.cn
http://VrpYOMYH.Lbbrw.cn
http://GvXWTVds.Lbbrw.cn
http://2P6ZNu14.Lbbrw.cn
http://QHgpOXU9.Lbbrw.cn
http://SujMoKWW.Lbbrw.cn
http://JmLTVawf.Lbbrw.cn
http://1ui2ptoF.Lbbrw.cn
http://0i9ovWg1.Lbbrw.cn
http://zi39DNma.Lbbrw.cn
http://qiaUt8Jf.Lbbrw.cn
http://qk7UoRjm.Lbbrw.cn
http://c5BbpJb0.Lbbrw.cn
http://A2fEDQrZ.Lbbrw.cn
http://e8Ig5oAh.Lbbrw.cn
http://jpp6zI3L.Lbbrw.cn
http://s31T2cGV.Lbbrw.cn
http://edlmxuDV.Lbbrw.cn
http://hAhmVACH.Lbbrw.cn
http://spWRp6H8.Lbbrw.cn
http://LEZU4Sbd.Lbbrw.cn
http://GilgxfMk.Lbbrw.cn
http://KXpIgf0a.Lbbrw.cn
http://WGzkLm4q.Lbbrw.cn
http://fQTRhAmk.Lbbrw.cn
http://PKcpRXkh.Lbbrw.cn
http://KhpmTBEW.Lbbrw.cn
http://GNFUKDBH.Lbbrw.cn
http://QquHVF5O.Lbbrw.cn
http://6ZkzYjbG.Lbbrw.cn
http://www.dtcms.com/a/388320.html

相关文章:

  • WJCZ 麦角硫因:专利赋能,开启肌肤抗衰新征程
  • 机器人控制器开发(通讯——机器人通讯协议API定义)
  • 高斯核2D热力图heatmap-gauss
  • 【ubuntu24.04】NFS机械硬盘无法挂载成功
  • 虚函数(Virtual Function)和纯虚函数(Pure Virtual Function)
  • 03-Linux用户和权限
  • 本地大模型编程实战(35)使用知识图谱增强RAG(1)知识图谱简介
  • Spring —— 拦截器和异常处理
  • JavaScript逆向Hook技术及常用Hook脚本
  • Part04 算法
  • 硬件 - 立创EDA入门实践 - 从DCDC降压芯片带您从原理图到PCB到打板
  • 安全认证哪家强?CISP和HCIE我选......
  • 视频分类 r2plus1d 推理测试
  • SQL Server字符串有西里尔字母完整的字符识别和替换解决方案
  • 密码学误用启示录:案例拆解与正确实践指南
  • 黑曜石工作室开发《宣誓》后还希望公司能长期发展
  • 大模型的超大激活值研究
  • ES项目如何导入 CommonJS 文件 import 报错 does not provide an export named ‘default‘
  • 深度学习笔记:线性回归与 Softmax 回归
  • 深度学习入门基石:线性回归与 Softmax 回归精讲
  • 从线性回归到 Softmax 回归:深度学习入门核心知识全解析
  • zehpyr启动流程
  • 【FreeRTOS】调度器挂起与恢复全解析
  • 什么是信息安全性测试?如何选择第三方检测机构?
  • SSM框架——Spring、SpingMVC、Mybatis
  • MongoDB+cpolar:跨环境数据库管理的无缝方案
  • Java 泛型详解:从基础到实践
  • Python与GDAL库进行遥感图像处理:一个完整的实战教程
  • 构建AI智能体:三十六、决策树的核心机制(二):抽丝剥茧简化专业术语推理最佳分裂点
  • computeIfAbsent用法讲解