Python 是否可以使用;“输入变量”;按惯例
我是python和正则表达式的新手。 我正在尝试实现一行正则表达式。 在第一个输入中,您希望获取一个要检查的文本,而在第二个输入中,您需要正则表达式模式。在python中有可能实现这一点吗Python 是否可以使用;“输入变量”;按惯例,python,regex,Python,Regex,我是python和正则表达式的新手。 我正在尝试实现一行正则表达式。 在第一个输入中,您希望获取一个要检查的文本,而在第二个输入中,您需要正则表达式模式。在python中有可能实现这一点吗 import re print(len(re.findall(f'{input()}', f'{input()}'))) 编辑:使问题更清楚; 由于表达式的原因,控制台将第一个输入作为正则表达式输入到代码中。第二个输入作为文本进行检查。我希望第一个输入用于放置文本以进行检查,第二个输入用于正则表达式 PS
import re
print(len(re.findall(f'{input()}', f'{input()}')))
编辑:使问题更清楚;
由于表达式的原因,控制台将第一个输入作为正则表达式输入到代码中。第二个输入作为文本进行检查。我希望第一个输入用于放置文本以进行检查,第二个输入用于正则表达式
PS:对不起,我的英语不好,谢谢大家的帮助。那么你想在函数调用的同一行上获取输入,但在调用函数时颠倒顺序?您可以通过将它们收集到一个列表中,反转该列表,然后使用splat操作符调用该函数来实现这一点
print(len(re.findall(*[input("String:"), input("Regexp:")][::-1])))
没有必要使用
format()
,因为input()
返回一个字符串。我不知道您想做什么len()
返回一个整数,它没有format()
方法。re.findall()
的第一个参数是正则表达式,第二个是要搜索的字符串。您的意思是text\u to\u check=input();regex=input();关于findall(正则表达式,文本到检查)
?python中的表达式从左到右求值。也许你想要类似于re.findall(*[input(),input()][::-1])
?Giacomo Alzetta这是一个有趣的想法,但如何在一行代码中使用它呢?是的!这就是我想做的。我无法使你的代码工作,它给出了TypeError。修复了它。.reverse()
方法原地反转并返回None
,我需要使用一个切片来返回反转的列表。