gpt4 book ai didi

python - 如何正确拆分代码字符串

转载 作者:太空宇宙 更新时间:2023-11-04 01:07:15 24 4
gpt4 key购买 nike

我正在尝试用 Python 为 Java 编写一个基本的词法分析器。我现在面临的问题是将一行字符串拆分为单词/标记。

示例:

if (x < 3)
{
x = 3;
}
else
{
x = 0;
}

我希望它返回这样的列表:

["if", "(", "x", "<", "3", ")", ...

但是我的代码正在返回

["if", "(x", "<", "3)"]

我的代码:

for line in code.readlines():
for word in line.split():
print word

我搜索了一个解决方案,但只找到了使用正则表达式的解决方案,有没有不用正则表达式的方法?因为我不知道如何使用它们,而且我现在没有足够的时间来学习它...

任何帮助将不胜感激...

最佳答案

Python string .split() 函数,默认将以空格分隔的字符串拆分,并返回一个包含所有不带空格的混合字符的列表。我的简单建议是在使用 .split() 函数之前用新的两侧空格符号替换符号字符:

for line in code.readlines():
for sign in '({[<+-=*/%;>]})':
line = line.replace(sign, ' %s ' % sign)
for word in line.split():
print word

关于python - 如何正确拆分代码字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29739900/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com