如何从行中获得特定单词

01 JAN 06:49:30.439警告-进入区域-操作员=5,正文部分=正文,u=75830967.07,v=45233540.51,w=30.439,增量=3
从上面的行如何打印输入的区域和增量

# 回答1


如果输入格式始终不变,则使用"Split"拆分输入数据。

选择 | 换行 | 行号
  1. val = input('')
  2. l = val.split(',')
  3. m = l[0].split('=')
  4. n = l[5].split('=')
  5. x = m[1]
  6. y = n[1]
  7. print(x,y)
  8.  

如果在Delta=x之后有换行码,则以下代码可以工作。

选择 | 换行 | 行号
  1. f = open('filename')
  2. val = f.readline()
  3. while val:
  4.   l = val.split(',')
  5.   m = l[0].split('= ')
  6.   n = l[5].split('= ')
  7.   if ('Entered Zone' in m[0]):
  8.       x = m[1]
  9.       y = n[1]
  10.       print(x,y)
  11.   val = f.readline()
  12. f.close
  13.  

"Delta=x"后的一个空格,后跟下一个数据。

选择 | 换行 | 行号
  1. f = open('filename')
  2. val = f.readline()
  3. f.close
  4. val2 = val.replace(' ',',')
  5. word = val2.split(',')
  6. flg1 = False
  7. flg2 = False
  8. enterd = ''
  9. delta = ''
  10. i = 0
  11. for elem in word:
  12.     if word[i] == 'Entered':
  13.         enterd = word[i+5]
  14.         flg1 = True
  15.     if flg1 == True and word[i] == 'delta':
  16.         delta = word[i+2]
  17.         flg2 = True
  18.     if flg1 and flg2:
  19.         print(enterd,delta)
  20.         flg1 = False
  21.         flg2 = False
  22.     i = i + 1
  23.  
# 回答2


01 JAN 06:49:30.439警告-进入区域-操作员=5,主体部分=主体,u=75830967.07,v=45233540.51,w=0.00,增量=3 01JAN 06:49:30.439警告-进入区域-操作员=5,主体部分=主体,u=75830967.07,v=45233540.51,w=0.00,增量=1 01JAN 06:49:30.439警告-退出-操作员=5,主体部分=主体,u=75830967.07,v=45233540.51,w=0.00,增量=2 01JAN 06:49:0警告-进入区域-操作员=5,身体部位=正文,u=75830967.07,v=45233540.51,w=30.439,增量=4
文件由这些行组成,我得到了包含Enter Zone的行,并打印了delta值
# 回答3


它看起来没有换行符,也没有逗号,只有在Delta=x之后才有,所以用前面的POST方式是不可能的。
我想在"Delta=x"之后,会有一个用空格"拆分"的操作。

标签: python

添加新评论