新手正则表达式策略:将伪代码转换为Python字典
两种高效方案:将伪代码转成Python字典
针对你700行的伪代码转换需求,我给你准备了两种实用方案,按需选择就行~
方案一:Python脚本自动化处理(适合重复/批量场景)
如果以后还可能遇到类似转换,写个小脚本绝对是最省心的,而且能自动处理各种细节(比如空行、特殊字符)。直接用下面的代码就行:
# 读取原始伪代码文件 with open('input.txt', 'r', encoding='utf-8') as input_file: raw_lines = input_file.readlines() processed_entries = [] for line in raw_lines: # 去掉每行首尾的空白和换行符 cleaned_line = line.strip() # 跳过空行 if not cleaned_line: continue # 分割键和值部分(只分割一次,避免键里有空格时出错) key, value = cleaned_line.split(' --> ', maxsplit=1) # 处理键里的单引号(避免语法错误) escaped_key = key.replace("'", "\\'") # 格式化为字典条目 entry = f"'{escaped_key}' : {value}" processed_entries.append(entry) # 组合成完整的Python字典字符串 final_dict = '{' + ',\n'.join(processed_entries) + '}' # 写入结果文件 with open('output_dict.py', 'w', encoding='utf-8') as output_file: output_file.write(final_dict)
脚本优势:
- 自动跳过空行,避免生成无效的字典条目
- 用
maxsplit=1确保键里的空格(比如你的big house)不会被误分割 - 自动转义键里的单引号,避免出现Python语法错误
- 处理完直接生成可运行的Python字典文件
方案二:文本编辑器正则替换(适合快速一次性处理)
要是你不想写代码,用VS Code、Sublime Text这类支持正则的编辑器就能快速搞定,步骤如下:
- 打开你的伪代码文件,调出替换功能(VS Code按
Ctrl+H,然后勾选右上角的「正则表达式」按钮) - 第一步:替换分隔符并给键加引号
- 查找模式:
^(.*?) --> (.*)$ - 替换模式:
'\1' : \2 - 点击「全部替换」,这一步会把每行的
big house --> ['xxx']变成'big house' : ['xxx']
- 查找模式:
- 第二步:添加首尾花括号并补充分隔逗号
- 全选所有内容(
Ctrl+A),在开头手动加{,结尾加} - 再用替换功能,把换行符替换成
,\n:查找\n,替换为,\n,然后手动删掉最后一行末尾多余的逗号(或者用正则\n$匹配最后一个换行,替换为空后再补逗号)
- 全选所有内容(
编辑器替换优势:
- 零代码,操作快,适合一次性处理
- 可视化操作,能实时看到转换效果
小提示
如果你的伪代码里键包含双引号,或者值里有特殊字符,脚本方案的容错性会更强,建议优先用脚本处理哦~
内容的提问来源于stack exchange,提问作者Nicholas Beaudoin
相关产品推荐
相关产品推荐

