Skip to content

Python 模式使用指南

什么是 Python 模式?

Python 模式允许你在 RPA 的编辑页面中直接编写 Python 表达式,用于处理复杂的逻辑判断和数据处理,无需通过多个流程组件实现

在变量或参数的输入框中,你可以选择启用 Python 模式,这样就能够使用完整的 Python 语法来编写表达式,而不仅仅局限于简单的值填写。

核心优势

优势说明
高效处理复杂逻辑一行表达式完成本需多个步骤的逻辑
灵活的数据处理支持条件判断、字符串操作、列表处理等
减少组件使用避免拖拽多个流程组件堆积
代码复用能力编写一次,多处使用相同逻辑

如何使用 Python 模式?

步骤 1:进入编辑页面

在 RPA 的设计器中打开需要编辑的变量或参数输入框。

下图是默认的普通变量模式

步骤 2:启用 Python 模式

点击输入框左侧的 模式切换 按钮,启用 Python 表达式编写。

下图是点击后处于Python模式的输入框。

步骤 3:编写表达式

在编辑框中直接编写 Python 表达式,系统会自动识别并执行。

常见使用场景

场景 1:条件判断

需求:根据变量值返回 True 或 False

python
# 示例:判断变量值是否等于 3
True if variable_var_1 == 3 else False

# 更简洁的写法
variable_var_1 == 3

场景 2:三元表达式

需求:根据条件返回不同的值

python
# 示例:根据分数判断等级
"优秀" if score >= 90 else "良好" if score >= 80 else "及格" if score >= 60 else "不及格"

# 示例:根据数值返回对应操作
"增加" if number > 100 else "减少" if number < 50 else "保持不变"

场景 3:数据清理和转换

需求:处理文本数据

python
# 示例:清除字符串两端空格
user_input.strip()

# 示例:转换为大写
user_name.upper()

# 示例:检查字符串是否包含特定文本
"error" in log_content.lower()

场景 4:数学运算

需求:进行复杂的数学计算

python
# 示例:计算税后价格
price * 0.9

# 示例:计算平均值
(score1 + score2 + score3) / 3

# 示例:取绝对值
abs(temperature - 37)

场景 5:列表和字典操作

需求:处理集合数据

python
# 示例:获取列表长度
len(data_list)

# 示例:从字典获取值
user_dict.get("name", "未知")

# 示例:检查元素是否在列表中
"admin" in user_roles

Python 表达式语法支持

支持的语法:Python 模式支持大多数 Python 内置函数和常见的表达式写法

支持的内容

  • ✓ 基础运算符:+, -, *, /, //, %, **
  • ✓ 比较运算符:==, !=, <, >, <=, >=
  • ✓ 逻辑运算符:and, or, not
  • ✓ 条件表达式:if ... else ... 三元表达式
  • ✓ 内置函数:len(), abs(), max(), min(), round(), int(), str(), float(), 等
  • ✓ 字符串方法:strip(), upper(), lower(), replace(), split(), 等
  • ✓ 列表/字典操作:len(), .get(), in 关键字,等

不支持的内容

  • ✗ 导入外部模块(import, from
  • ✗ 文件操作(open(), read()
  • ✗ 系统调用
  • ✗ 自定义函数定义(def

最佳实践

编写建议:遵循以下建议让你的 Python 表达式更清晰、更易维护

1. 保持表达式简洁

python
# ✓ 好
result = age >= 18

# ✗ 不好(过于复杂)
result = (age >= 18 and age < 65) or (age >= 18 and status == "active")

2. 优先使用内置函数

python
# ✓ 好
max(score1, score2, score3)

# ✗ 不好(手动实现)
score1 if score1 > score2 and score1 > score3 else score2 if score2 > score3 else score3

3. 合理使用变量名

python
# ✓ 好 - 清晰的变量名
is_admin = user_role == "admin"

# ✗ 不好 - 变量名不清晰
a = b == "c"

4. 处理可能的异常

python
# ✓ 好 - 使用 .get() 方法避免 KeyError
config.get("timeout", 30)

# ✗ 不好 - 可能抛出异常
config["timeout"]

常见问题

Q1:如何在 Python 模式中访问其他变量?

直接使用变量名即可,系统会自动将其替换为对应的值。

python
# 示例:访问名为 user_age 的变量
user_age > 18

Q2:Python 模式中可以使用多行代码吗?

不可以。Python 模式仅支持单行表达式。如果需要多行逻辑,请使用普通的流程组件。

Q3:表达式执行出错怎么办?

检查以下几点:

  • ✓ 确认所有变量名称拼写正确
  • ✓ 检查括号是否完整配对
  • ✓ 验证数据类型是否匹配(如字符串 vs 数字)
  • ✓ 查看执行日志获取具体错误信息

Q4:Python 模式的执行性能如何?

Python 模式的表达式执行性能非常高,通常在毫秒级别完成。对复杂逻辑的处理效率远高于多个组件的组合。

对比:Python 模式 vs 传统流程

示例:实现"根据分数判断等级"的逻辑

使用 Python 模式(1 行代码)

python
"优秀" if score >= 90 else "良好" if score >= 80 else "及格" if score >= 60 else "不及格"

使用传统流程(需要多个判断组件)

需要串联多个条件判断组件,流程复杂冗长。


需要更多帮助?

获取支持:如有其他问题,请查看相关文档或联系技术支持