问题:
实现一个名为 stripComments(code) 的 Python 函数,其中 code 是一个参数,它采用包含 Python 代码的字符串。函数 stripComments() 返回删除所有注释的代码。
I have:
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>*#
匹配字符#
开头有或没有前面的空格。.*
匹配除换行符之外的所有以下字符。用空字符串替换那些匹配的字符将为您提供删除了注释行的字符串。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)