【Python练习】 049. 编写一个函数,实现简单的文本编辑器功能,支持增删改查
049. 编写一个函数,实现简单的文本编辑器功能,支持增删改查
- 049. 编写一个函数,实现简单的文本编辑器功能,支持增删改查
-
- 示例代码
-
- 运行结果
- 代码解释
- 扩展:命令行接口
-
- 测试示例
- 注意事项
- 实现方法
-
- 实现文本编辑器的几种方法
- 使用列表存储文本行
- 使用链表优化插入和删除
- 使用第三方库 `tkinter` 实现 GUI 文本编辑器
- 使用文件存储和操作文本
- 选择方法的建议
049. 编写一个函数,实现简单的文本编辑器功能,支持增删改查
在 Python 中,可以实现一个简单的文本编辑器功能,支持增加、删除、修改和查询文本内容。
示例代码
class SimpleTextEditor:"""简单文本编辑器类,支持增删改查功能。"""def __init__(self):self.text = "" # 初始化为空字符串def add_text(self, content):"""增加文本内容。参数:content (str): 要添加的文本内容。"""self.text += contentprint("文本已添加。")def delete_text(self, start, end):"""删除指定范围的文本内容。参数:start (int): 起始索引(包含)。end (int): 结束索引(不包含)。"""if start < 0 or end > len(self.text) or start > end:print("错误:索引范围无效。")returnself.text = self.text[:start] + self.text[end:]print("文本已删除。")def modify_text(self, start, end, new_content):"""修改指定范围的文本内容。参数:start (int): 起始索引(包含)。end (int): 结束索引(不包含)。new_content (str): 新的文本内容。"""if start < 0 or end > len(self.text) or start > end:print("错误:索引范围无效。")returnself.text = self.text[:start] + new_content + self.text[end:]print("文本已修改。")def query_text(self, start, end):"""查询指定范围的文本内容。参数:start (int): 起始索引(包含)。end (int): 结束索引(不包含)。返回:str: 查询到的文本内容。"""if start < 0 or end > len(self.text) or start > end:print("错误:索引范围无效。")return ""return self.text[start:end]# 测试代码
editor = SimpleTextEditor()# 增加文本
editor.add_text("Hello, World!")
print("当前文本:", editor.query_text(0, len(editor.text)))# 修改文本
editor.modify_text(7, 12, "Python")
print("当前文本:", editor.query_text(0, len(editor.text)))# 删除文本
editor.delete_text(0, 6)
print("当前文本:", editor.query_text(0, len(editor.text)))# 查询文本
print("查询结果:", editor.query_text(0, 5