Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
一行python代码,用于删除所有不使用';t以t或t开头,如果它们包含大于6的数字_Python_Python 2.7_Python 3.x_For Loop_Filter - Fatal编程技术网

一行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条件之后,但为了检查数字,我需要遍历字符串的每个字符,这就是它不起作用的地方。虽然这个代码片段可以解决这个问题,但确实有助于提高您的文章的质量。请记住,您将在将来回答读者的问题,而这些人可能不知道您的代码建议的原因。虽然此代码片段可以解决问题,但确实有助于提高您文章的质量。请记住,您将在将来回答读者的问题,这些人可能不知道您的代码建议的原因。