一行python代码,用于删除所有不使用';t以t或t开头,如果它们包含大于6的数字
例如: 输出应该是:一行python代码,用于删除所有不使用';t以t或t开头,如果它们包含大于6的数字,python,python-2.7,python-3.x,for-loop,filter,Python,Python 2.7,Python 3.x,For Loop,Filter,例如: 输出应该是:[“tata1”、“tata2”、“Tata3”、“t2”] 我试过: List=["tata1","tata2","Tata3","mdkjd","djhdj","Tata8","t9","t2"] 我怀疑我是否可以在代码中使用if附加一个条件 如果是,如何进行 我试着写,但它给出了错误。您可以使用和来测试多个条件 content = [item for item in List if terminal.lower().startswith('t')] 因此,从左到右,
[“tata1”、“tata2”、“Tata3”、“t2”]
我试过:
List=["tata1","tata2","Tata3","mdkjd","djhdj","Tata8","t9","t2"]
我怀疑我是否可以在代码中使用if附加一个条件
如果是,如何进行
我试着写,但它给出了错误。您可以使用
和
来测试多个条件
content = [item for item in List if terminal.lower().startswith('t')]
因此,从左到右,这将测试:
- 非空字符串
- 以
'或't
't'
- 具有任何数字
,'7'
或'8'
'9'
这些条件将“短路”,这意味着在第一次测试失败时,无需检查以下条件是否为
错误,并且(任何)
始终为错误您可以使用和来测试多个条件
content = [item for item in List if terminal.lower().startswith('t')]
因此,从左到右,这将测试:
- 非空字符串
- 以
't
'或't'
- 具有任何数字
'7'
,'8'
或'9'
这些条件将“短路”,这意味着在第一次测试失败时,无需检查以下条件,如False和(任何)
始终为False
匹配所需输出需要使用all
和not in
检查输入字符串中是否不包含'789'
字符,同时检查起始字符:
>>> [i for i in l if i and i[0] in 'tT' and all(j not in i for j in '789')]
['tata1', 'tata2', 'Tata3', 't2']
现在res
包含:
res = [s for s in List if s[0] in ('tT') and all(j not in s for j in '789')]
匹配所需输出需要使用all
和not in
检查输入字符串中是否不包含'789'
字符,同时检查起始字符:
>>> [i for i in l if i and i[0] in 'tT' and all(j not in i for j in '789')]
['tata1', 'tata2', 'Tata3', 't2']
现在res
包含:
res = [s for s in List if s[0] in ('tT') and all(j not in s for j in '789')]
使用和,或-即如果x和y或z:
是我包括了”和“在我的第一个if条件之后,但为了检查数字,我需要遍历字符串的每个字符,这是它不起作用的地方。使用和或-即如果x和y或z:
是我包括了”和在我的第一个if条件之后,但为了检查数字,我需要遍历字符串的每个字符,这就是它不起作用的地方。虽然这个代码片段可以解决这个问题,但确实有助于提高您的文章的质量。请记住,您将在将来回答读者的问题,而这些人可能不知道您的代码建议的原因。虽然此代码片段可以解决问题,但确实有助于提高您文章的质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。