前言
1. 引入库
import originpro as op
2. 加入异常钩子
官方文档推荐加入,如果你的脚本在运行中崩溃(如报错),这个钩子会确保外部启动的 Origin 进程被正确关闭,避免后台残留。
import sys
def origin_shutdown_exception_hook(exctype, value, traceback):
'''Ensures Origin gets shut down if an uncaught exception'''
op.exit()
sys.__excepthook__(exctype, value, traceback)
if op and op.oext:
sys.excepthook = origin_shutdown_exception_hook
3. 相关函数的介绍
open()
op.open(file, readonly=False, asksave=False)
- 功能:打开一个 Origin 项目文件(
.opj,.opju等),并将其加载到当前 Origin 实例中; - 效果:Origin 会关闭当前项目(除非保存),并用新项目替换。
参数详解
1. file(字符串)
- 作用:要打开的项目文件的完整路径;
- 格式要求:
- 必须是有效的
.opj(旧版)或.opju(新版,基于 Unicode)文件; - 路径中的反斜杠
ackslash在 Python 字符串中需转义,建议使用原始字符串(r"...")或正斜杠/。
- 必须是有效的
正确写法:
# 方法 1:原始字符串(推荐)
op.open(r'C:\Data\MyProject.opju')
# 方法 2:正斜杠(跨平台兼容)
op.open('C:/Data/MyProject.opju')
错误写法:
op.open('C:\Data\MyProject.opju') # \D 和 \M 可能被转义为非法字符!
2. readonly(布尔值,默认 False)
- 作用:是否以只读模式打开项目;
- 行为:
True→ 打开后无法修改数据/图表,防止意外覆盖原文件;False(默认)→ 可正常编辑。
3. asksave(布尔值,默认 False)
- 作用:如果当前项目有未保存的修改,是否弹出保存提示框;
- 行为:
True→ 弹出对话框:'是否保存当前项目?'(用户需手动点击);False(默认)→ 直接丢弃当前修改,不提示(适合自动化脚本)。
返回值
True:项目成功加载;False:打开失败(如文件不存在、路径错误、文件损坏等)
attach()
op.attach()
功能:直接连接目前已经打开的 origin 窗口
save()
op.save(file='')
- 功能:将当前正在使用的 Origin 项目(所有工作簿、图表、结果等)保存到磁盘;
- 行为:
- 如果
file为空(默认)→ 保存到当前项目已有的文件路径(相当于点击 Origin 菜单栏的'保存'); - 如果指定了
file→ 另存为(Save As)到新路径(相当于'另存为')。
- 如果
参数详解
file(字符串,默认 '')
- 作用:指定保存的文件路径和名称;
- 格式要求:
- 支持
.opj(旧版)或.opju(新版)文件。
- 支持
