如果元素返回true,如何检查if语句

时间:2014-12-25 14:10:03

标签: python python-2.7

我正在处理我的python脚本,因为我创建了一个列表来存储数组中的元素。

我的if语句有问题。如果我有值375,我试图找到这些元素,但它不会让我传递if语句。

以下是代码:

program_X = list()

#create the rows to count for 69 program buttons
for elem in programs_button:
    program_width.append(elem.getWidth())
    program_X.append(elem.getX())
program_X = map(str, program_X)


#get the list of position_X for all buttons
for pos_X in programs_X:

    #find the position with 375
    if pos_X == 375:
        print pos_X

以下是我用于从数组中打印的元素列表:

14:08:55 T:1260  NOTICE: 375
14:08:55 T:1260  NOTICE: 724.06
14:08:55 T:1260  NOTICE: 1610.21
14:08:55 T:1260  NOTICE: 2496.39
14:08:55 T:1260  NOTICE: 2845.45
14:08:55 T:1260  NOTICE: 3194.51
14:08:55 T:1260  NOTICE: 3543.57
14:08:55 T:1260  NOTICE: 3892.63
14:08:55 T:1260  NOTICE: 4241.69
14:08:55 T:1260  NOTICE: 4590.75
14:08:55 T:1260  NOTICE: 4939.81
14:08:55 T:1260  NOTICE: 5288.87
14:08:55 T:1260  NOTICE: 5637.93
14:08:55 T:1260  NOTICE: 5986.99
14:08:55 T:1260  NOTICE: 6336.05
14:08:55 T:1260  NOTICE: 6685.11
14:08:55 T:1260  NOTICE: 7034.17
14:08:55 T:1260  NOTICE: 7383.23
14:08:55 T:1260  NOTICE: 7732.29
14:08:55 T:1260  NOTICE: 8081.35
14:08:55 T:1260  NOTICE: 8430.41
14:08:55 T:1260  NOTICE: 8779.47
14:08:55 T:1260  NOTICE: 9665.59
14:08:55 T:1260  NOTICE: 10014.65
14:08:55 T:1260  NOTICE: 10363.71
14:08:55 T:1260  NOTICE: 10712.77
14:08:55 T:1260  NOTICE: 11061.83
14:08:55 T:1260  NOTICE: 11410.89
14:08:55 T:1260  NOTICE: 11759.95
14:08:55 T:1260  NOTICE: 12109.01
14:08:55 T:1260  NOTICE: 12458.07
14:08:55 T:1260  NOTICE: 12807.13
14:08:55 T:1260  NOTICE: 13156.19
14:08:55 T:1260  NOTICE: 13505.25
14:08:55 T:1260  NOTICE: 13854.31
14:08:55 T:1260  NOTICE: 14203.37
14:08:55 T:1260  NOTICE: 14552.43
14:08:55 T:1260  NOTICE: 14901.49
14:08:55 T:1260  NOTICE: 15250.55
14:08:55 T:1260  NOTICE: 15599.61
14:08:55 T:1260  NOTICE: 15948.67
14:08:55 T:1260  NOTICE: 16297.73
14:08:55 T:1260  NOTICE: 17183.85
14:08:55 T:1260  NOTICE: 17532.91
14:08:55 T:1260  NOTICE: 17881.97
14:08:55 T:1260  NOTICE: 18231.03
14:08:55 T:1260  NOTICE: 18580.09
14:08:55 T:1260  NOTICE: 18929.15
14:08:55 T:1260  NOTICE: 19278.21
14:08:55 T:1260  NOTICE: 19627.27
14:08:55 T:1260  NOTICE: 19976.33
14:08:55 T:1260  NOTICE: 20325.39
14:08:55 T:1260  NOTICE: 20674.45
14:08:55 T:1260  NOTICE: 21023.51
14:08:55 T:1260  NOTICE: 21372.57
14:08:55 T:1260  NOTICE: 21721.63
14:08:55 T:1260  NOTICE: 22070.69
14:08:55 T:1260  NOTICE: 22419.75
14:08:55 T:1260  NOTICE: 22768.81
14:08:55 T:1260  NOTICE: 23117.87
14:08:55 T:1260  NOTICE: 23466.93
14:08:55 T:1260  NOTICE: 24353.05
14:08:55 T:1260  NOTICE: 24702.11
14:08:55 T:1260  NOTICE: 25051.17
14:08:55 T:1260  NOTICE: 25400.23
14:08:55 T:1260  NOTICE: 25749.29
14:08:55 T:1260  NOTICE: 26098.35
14:08:55 T:1260  NOTICE: 26447.41
14:08:55 T:1260  NOTICE: 26796.47
14:08:55 T:1260  NOTICE: 375
14:08:55 T:1260  NOTICE: 724.06
14:08:55 T:1260  NOTICE: 1610.21
14:08:55 T:1260  NOTICE: 1959.27
14:08:55 T:1260  NOTICE: 2308.33
14:08:55 T:1260  NOTICE: 3194.45
14:08:55 T:1260  NOTICE: 3543.51
14:08:55 T:1260  NOTICE: 4241.6
14:08:55 T:1260  NOTICE: 4590.66
14:08:55 T:1260  NOTICE: 4939.72
14:08:55 T:1260  NOTICE: 5825.9
14:08:55 T:1260  NOTICE: 6174.96

当我试图找到375的元素时,能否帮助我如何传递if语句?

2 个答案:

答案 0 :(得分:4)

由于program_x包含字符串元素:

program_X = map(str, program_X)
                 ^

您需要更改以下内容:

if pos_X == 375

if pos_X == '375'

答案 1 :(得分:0)

如果以这种方式将字符串存储在列表中,

program_X = ['14:08:55 T:1260  NOTICE: 8081.35', ...]

然后使用in关键字检查单词

for pos_X in programs_X:    
    #find the position with 375
    if '375' in pos_X:
        print pos_X