Python 在字符串列表中查找字符串的一部分

Python 在字符串列表中查找字符串的一部分,python,Python,我正在查看csv文件中的一行并取出我想要的号码。我想要以我在GCM中的号码开头的号码。因为它们代表我想在其他列中看到的信息。这与slice函数配合得很好,因为我想要的所有数字都以3位数字开头。现在我需要查找以4404开头的任何数字,以后可能需要查找57052切片函数不再工作 有没有办法,我可以,而不是切片和比较清单,可以采取5位数字,看看它是否在清单的一部分。最好从3个或更多相同的数字开始查找。这部分代码的真正意义在于找出编号在GCM列表中的哪个列表。它需要能够拥有数字44042,并且知道它关心

我正在查看csv文件中的一行并取出我想要的号码。我想要以我在
GCM
中的号码开头的号码。因为它们代表我想在其他列中看到的信息。这与slice函数配合得很好,因为我想要的所有数字都以3位数字开头。现在我需要查找以
4404
开头的任何数字,以后可能需要查找
57052
切片函数不再工作

有没有办法,我可以,而不是切片和比较清单,可以采取5位数字,看看它是否在清单的一部分。最好从3个或更多相同的数字开始查找。这部分代码的真正意义在于找出编号在
GCM
列表中的哪个列表。它需要能够拥有数字
44042
,并且知道它关心的部分在
GCM[3]
中,但另一方面不希望它说
32519
DCM[0]
中,因为我只关心以
519
开头的数字,而不关心以它结尾的数字


另外,我是挪威人,一直在自学编程。有几个漫长的夜晚。因此,这里的某些内容可能会在翻译过程中丢失。

您可以使用
str.startswith()
来测试一个子字符串是否是另一个字符串的开头,然后不需要对特定长度进行切片

您可以使用
any()
来测试
GCM
列表中的任何字符串是否以这种方式匹配

GCM = ([519,520,521,522,533],[534,525],[526,527,530,531], [4404])

slice = int(str(df["CGM"][row_count])[:3])

你能举个简单的例子来说明你想要什么吗?我的理解正确吗?您想从列表中筛选出以特定数字开头的元素?您能给我们一个输入和输出示例吗?GCM是一个元组,包含数字列表,而不是字符串。您可以使用
startswith()
方法来判断字符串是否以另一个字符串开头。谢谢。如果数字是int,你可以使用
num.startswith(str(code))
@DaniloToro True,但我不喜欢在循环中反复转换为
str
。所以在循环之前应该做一次。那太完美了!已经尝试了any(),正在研究一种方法来循环遍历GCM的所有部分,并将其与文件中的输入进行比较。但它开始变得很长,而且不起作用。所以这是我一下班回家就会尝试的。
GCM = (['519','520','521','522','533'],['534','525'],['526','527','530','531'], ['4404'])
num = '44042'
for i, l in enumerate(GCM):
    if any(num.startswith(code) for code in l)
        print(f'Found {num} in GCM[{i}]')
        break
else:
    print(f'{num} not found in GCM')