我有一段代码试图在 for 循环期间将 'i'
插入到 f 字符串中。但是,我希望 Python 根据 'i'
是否包含某个字符串 ('nogood'
) 来过滤掉它。我注意到它适用于“=”或“in”,但不适用于“like”。我已经尝试了以下方法,但它无法编译...
i_list = ['hello', 'good', 'bad', 'bye', 'yup', 'yupnogood', 'hellogood']
final_list = [f"{i}_hello" for i in temp_list if i like '%good%']
您知道是否有一种简写方法可以在那里实现通配符搜索(如果这样做是好的做法)?
最佳答案
对于这种简单形式的通配符搜索,您可以使用 in
运算符:
i_list = ['hello', 'good', 'bad', 'bye', 'yup', 'yupnogood', 'hellogood']
final_list = [f"{i}_hello" for i in temp_list if 'nogood' in i]
如果你想要更复杂的东西,你可以研究正则表达式。
关于python - 通配符字符串搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71959384/