正则表达式测试功能。可视化代码

问题描述 投票:0回答:2

我有以下代码:

from sys import stdin
import re

def main():
    def hidden1_test(): return hidden1('test')
    def hidden2_test(): return hidden2('test')
    tasks = [dna, sorted, hidden1_test, hidden2_test, equation, parentheses, sorted3]
    print('Skriv in teststrängar:')
    while True:
        line = stdin.readline().rstrip('\r\n')
        if line == '': break
        for task in tasks:
            result = '' if re.search(task(), line) else 'INTE '
            print('%s(): "%s" matchar %suttrycket "%s"' % (task.__name__, line, result, task()))

if __name__ == '__main__': main()

列表任务中的功能已在上面定义,但对我的问题来说并不重要。我了解函数主要运行的整个过程,直到最后两行:

result = '' if re.search(task(), line) else 'INTE '    
print('%s(): "%s" matchar %suttrycket "%s"' % (task.__name__, line, result, task()))

我不知道task.__name__是什么意思。名称必须为__name__ == '__main__',所以我想我的问题变成task.'__main__'是什么意思(如果我错了,请纠正我)?我将以上两行的第一行解释为:

result = '' 
if re.search(task(), line): 
else:
    'INTE '

我知道这是不对的,因为if语句下没有任何内容,但是我不知道如何测试代码以了解其含义。我只是想获得更好的理解,所以为不是一个非常高级的程序员的人做一个解释很好[]

提前感谢!

我有以下代码:从sys import stdin import re def main():def hidden1_test():返回hidden1('test')def hidden2_test():返回hidden2('test')任务= [dna,已排序, ...

regex python-3.x search line re
2个回答
0
投票

这里有多个问题。


0
投票

所以您有任务列表。

© www.soinside.com 2019 - 2024. All rights reserved.