Python:在,

Python:在,,python,Python,我试图找到一种方法,将我搜索的字符串拆分为几个子元素以查找信息。 我的文本具有以下结构: INPUT_1_NAME=INPUT_1_NAME,INPUT_1_SDI_ERRCNT=0,INPUT_1_STANDARD=625/25i,INPUT_1_STATE=OK,INPUT_1_TYPE=HD / SD / 3G SDI,INPUT_2_IDENT=2,INPUT_2_NAME=INPUT_2_NAME,INPUT_2_SDI_ERRCNT=0, 到目前为止,我的剧本是: with ope

我试图找到一种方法,将我搜索的字符串拆分为几个子元素以查找信息。 我的文本具有以下结构:

INPUT_1_NAME=INPUT_1_NAME,INPUT_1_SDI_ERRCNT=0,INPUT_1_STANDARD=625/25i,INPUT_1_STATE=OK,INPUT_1_TYPE=HD / SD / 3G SDI,INPUT_2_IDENT=2,INPUT_2_NAME=INPUT_2_NAME,INPUT_2_SDI_ERRCNT=0,
到目前为止,我的剧本是:

with open('Test.rtf') as f:
   for line in f:
        if 'NAME=NEQ1-VIF2601' in line:

我在整个文本文件中搜索设备NEQ1-VIF2601的信息。现在我想从这个字符串中找到输入信息,例如

你是说这样的吗?这将在逗号处拆分每一行,并将每个结果元素拆分为
左侧(等号左侧)和
右侧(等号右侧)


注意:-请确保当您提出任何查询时,其他人都能理解该查询,以便您能够非常轻松、快速地获得解决方案

解决这个问题的办法是。您可以在“,”上拆分输入字符串,然后将得到一个新列表,然后检查新列表中是否存在“input\u 1\u SDI\u ERRCNT,并从该新列表中获取值

解决方案:-

find_str = 'INPUT_1_SDI_ERRCNT'
for a in l:
    k = a.split('=')
    if k[0] == find_str:
        print(k[1])

python文档是您的朋友,
somestring.split(…)
也是。我还是不明白,你在尝试什么。你能在你的问题中添加更多的信息吗。意味着输入,更详细的各自输出。我的输入是Test.rtf,它是从服务器生成的文本文件。我过滤掉了设备名=NEQ1-VIF2601。现在我想过滤掉输入的信息,将其写入一个新文件。我认为这是正确的方法。很抱歉,我昨天开始使用Python,因为我需要它来完成一个项目。基本上我想过滤掉输入的值。如果元素中有多个
=
,例如
“a=1=2怎么办“
?您的代码只需丢弃
=2
部分即可。你想要一个错误吗?使用
left,right=element.split(“=”)
。您想要
=2
部件吗?使用
left,right=element.split(“=”,maxslit=1)
。您可以迭代元素,直到
left==“INPUT\u 1\u SDI\u ERRCNT”
当代码运行到此if语句时,
right
变量包含所需信息记住
Accept
答案
find_str = 'INPUT_1_SDI_ERRCNT'
for a in l:
    k = a.split('=')
    if k[0] == find_str:
        print(k[1])