为了账号安全,请及时绑定邮箱和手机立即绑定

在列表中搜索字符串python中的值

在列表中搜索字符串python中的值

叮当猫咪 2021-03-15 10:09:44
尝试搜索此列表a = ['1 is the population', '1 isnt the population', '2 is the population']如果可以实现,我想做的是在列表中搜索值1。如果值存在,则打印字符串。如果数字存在,我想要获得的输出是整个字符串。如果值1存在,我想获得的输出将打印字符串。IE1 is the population 2 isnt the population 上面是我想要的输出,但是我不知道如何得到它。是否可以在列表及其字符串中搜索值1,如果出现值1,则输出字符串
查看完整描述

3 回答

?
慕标5832272

TA贡献1966条经验 获得超4个赞

for i in a:

    if "1" in i:

        print(i)


查看完整回答
反对 回复 2021-03-30
?
泛舟湖上清波郎朗

TA贡献1818条经验 获得超3个赞

您应该regex在这里使用:


in 对于此类字符串也将返回True。


>>> '1' in '21 is the population'

True

代码:


>>> a = ['1 is the population', '1 isnt the population', '2 is the population']

>>> import re

>>> for item in a:

...     if re.search(r'\b1\b',item):

...         print item

...         

1 is the population

1 isnt the population


查看完整回答
反对 回复 2021-03-30
?
蝴蝶刀刀

TA贡献1801条经验 获得超8个赞

def f(x):

    for i in a:

        if i.strip().startswith(str(x)):

            print i

        else:

            print '%s isnt the population' % (x)


f(1) # or f("1")

这比进行"1" in x样式检查更准确/更严格,特别是如果您的句子'1'在字符串中的其他任何地方都具有非语义字符时。例如,如果您有一个字符串怎么办"2 is the 1st in the population"


您在输入数组中有两个语义上矛盾的值:


a = ['1 is the population', '1 isnt the population', ... ]

这是故意的吗?


查看完整回答
反对 回复 2021-03-30
  • 3 回答
  • 0 关注
  • 162 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信