CodeGeeX提供五种快速构建Python面向对象结构的方式:一、自然语言注释触发类生成;二、伪代码翻译为类;三、函数反向封装为类;四、手动补全逐行构建;五、自定义模板生成特定OOP模式。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

如果您希望使用 CodeGeeX 快速构建符合 Python 面向对象规范的类与对象结构,但不确定如何组织属性、方法、继承关系或特殊方法(如 __init__、__str__),以下是几种直接可用的实现方式:
一、通过自然语言注释触发自动类生成
该方法利用 CodeGeeX 的上下文感知能力,在编辑器中输入结构化注释后由插件实时生成完整类定义。适用于快速搭建基础类骨架。
1、在 Python 文件中新建空行,输入类似以下中文注释:
“定义一个表示学生信息的类,包含姓名、年龄、学号三个属性;提供初始化方法和打印基本信息的方法。”
立即学习“Python免费学习笔记(深入)”;
2、将光标置于该行末尾,按下 Ctrl+Enter 激活交互模式。
3、CodeGeeX 在右侧窗口生成多个候选类代码,检查是否包含 __init__ 方法及实例属性赋值语句。
4、点击任一候选上方的 use code 按钮,插入到当前光标位置。
二、使用翻译模式从伪代码或结构描述生成类
该方法适合已有设计草稿(如 UML 描述、表格字段列表)但缺乏 Python 语法实现经验的用户,可将非代码文本映射为合法类结构。
1、新建临时 .txt 文件,写入如下内容:
类名:BankAccount
属性:account_number(字符串)、balance(浮点数)、owner(字符串)
方法:deposit(amount)、withdraw(amount)、get_balance()
2、全选该段文本,右键选择 Copy。
3、切换回 .py 文件,粘贴至空白处,保持选中状态。
4、按下 Ctrl+Alt+T 启动翻译模式,目标语言选择 Python。
5、确认生成结果中包含 self.account_number = account_number 等标准实例属性绑定逻辑。
三、基于已有函数反向构造类封装
该方法适用于已有一组独立函数需整合为面向对象结构的场景,CodeGeeX 可识别参数共性并提取为实例属性。
快速生成专业的 Python 脚本和应用代码。一键创建完整项目结构,支持CLI、API、爬虫、Bot、Django等多种项目类型,包含完整的项目结构、配置文件、依赖管理、测试、README和文档。
1、在文件中写下至少两个功能相关函数,例如:
def calculate_tax(price, rate): return price * rate
def apply_discount(price, discount): return price * (1 - discount)
2、选中全部函数代码,按下 Alt+Option+T(Mac)或 Alt+T(Windows/Linux)启动提示模式。
3、在弹出模板选择框中,选取预置模板 "Convert functions to class"(若未显示,需提前在设置中导入该模板路径)。
4、检查输出结果是否将 price 提升为 self.price,并将原函数转为实例方法,且含 __init__(self, price) 构造器。
四、手动调用补全功能逐行构建类结构
该方法适用于需要精细控制访问修饰符、类型提示或装饰器的中高级用户,通过连续触发补全引导生成合规代码。
1、输入 class Person: 并换行。
2、在下一行输入 def __init__(self,,停顿半秒等待 CodeGeeX 自动补全参数列表及冒号后的缩进块。
3、在缩进内输入第一行: self.name: str = name,观察后续是否自动建议添加 age: int 等同级属性。
4、另起一行输入 def __str__(self) -> str:,确认补全内容包含 return f"Person(name={self.name})" 格式化字符串。
五、使用自定义模板强制生成特定 OOP 模式
该方法适用于需复用工厂模式、单例模式或数据类等固定结构的场景,通过加载外部模板文件确保生成一致性。
1、创建本地模板文件 dataclass_template.txt,内容为:
from dataclasses import dataclass
@dataclass
class {CLASS_NAME}:
{FIELD_1}: {TYPE_1}
{FIELD_2}: {TYPE_2}
2、进入 CodeGeeX 设置页,打开 Prompt Templates 面板,点击 Add Template,填入 key 为 dataclass,value 为该文件绝对路径。
3、在代码中输入 # template: dataclass,换行后输入 User,触发模板填充。
4、验证生成结果是否含 @dataclass 装饰器及 __init__ 和 __repr__ 自动生成逻辑。

















