gpt4 book ai didi

string - 如何从字符串中删除 '#' 注释?

转载 作者:行者123 更新时间:2023-12-03 23:24:58 25 4
gpt4 key购买 nike

问题:
实现一个名为 stripComments(code) 的 Python 函数,其中 code 是一个参数,它采用包含 Python 代码的字符串。函数 stripComments() 返回删除所有注释的代码。

我有:

def stripComments(code):
code = str(code)
for line in code:
comments = [word[1:] for word in code.split() if word[0] == '#']
del(comments)
stripComments(code)

我不确定如何具体告诉 python 搜索字符串的每一行,当它找到一个主题标签时,删除该行的其余部分。
请帮忙。 :(

最佳答案

您可以通过 re.sub 实现此目的功能。

import re
def stripComments(code):
code = str(code)
return re.sub(r'(?m)^ *#.*\n?', '', code)

print(stripComments("""#foo bar
bar foo
# buz"""))
(?m)启用多行模式。 ^断言我们处于开始阶段。 <space>*#匹配字符 #在开头有或没有前面的空格。 .*匹配除换行符以外的所有以下字符。用空字符串替换那些匹配的字符将为您提供删除注释行的字符串。

关于string - 如何从字符串中删除 '#' 注释?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28401547/

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