tcf1991 发表于 2019-5-19 13:45:57

怎么在字符串列表中找到特定中文字符串,并提取中间的数值?

怎么在["砖","砖2","砼15","坝",321.5,abcd,"木"]列表中找到带有"砖"或"砼"的字符串,并提取后面的数字,如果没有数字,就赋值为1,感谢各位大佬~!

ba21 发表于 2019-5-19 13:56:25

并提取后面的数字,如果没有数字,就赋值为1
没理解这句什么意思

°蓝鲤歌蓝 发表于 2019-5-19 14:06:02

本帖最后由 °蓝鲤歌蓝 于 2019-5-19 14:08 编辑

a = ["砖","砖2","砼15","坝", 321.5, 'abcd',"木"]

b = "砖"

c = '砼'

d = []

for i in a:
    if isinstance(i, str):
      if b in i or c in i:
            if i:
                d.append(i)
            else:
                d.append(1)
               
print(d)

或者
a = ["砖","砖2","砼15","坝", 321.5, 'abcd',"木"]

b = ["砖", "坝", '砼', "木"]


d = []

for i in a:
    if isinstance(i, str):
      if i in b:
            if i:
                d.append(i)
            else:
                d.append(1)
               
print(d)
自己优化
页: [1]
查看完整版本: 怎么在字符串列表中找到特定中文字符串,并提取中间的数值?