-1

文字列が if ステートメント コードの else ブロックなしでインデックスに一致する場合、期待どおりに機能します。ただし、else パーツが追加されると、常に「文字列なし」と表示されます

import sys


def string_search_index():
    '''
    This function search a string in a file through index and gives the result.    

    '''
    if len(sys.argv) != 3:
        print "Enter Two Arguments Only"
        sys.exit(1)

    stringsrch = sys.argv[2]
    #size = len(sys.argv)
    file_name = open("passwd", "r")
    #print "No of Argu ", size

    if sys.argv[1].isdigit():
        fieldindex = int(sys.argv[1])-1
    else:
        print "Enter Integer in 1st Argument"
        sys.exit(1)
    fieldindex = int(sys.argv[1])-1

    for store_file in file_name:
        temp = store_file.split(":")
        search = temp[fieldindex]
        #print search 

        if stringsrch in search:
            print store_file
        else:
            print "No String"
            sys.exit(1)


string_search_index()
4

1 に答える 1