1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | import sys def IsExistOnlyOneEqual( strLine ) : strLine = RemoveLuaComment( strLine ) find_pos = strLine.find( '=' , 0 ) if ( find_pos = = - 1 ) : return False find_pos = strLine.find( '=' , find_pos + 1 ) if ( find_pos = = - 1 ) : return True return False def RemoveLuaComment( strLine ) : find_pos = strLine.find( '--' , 0 ) if ( find_pos ! = - 1 ) : return strLine[ 0 : find_pos].strip() return strLine.strip() def LeftSideOfEqual( strLine ) : strLine = RemoveLuaComment( strLine ) find_pos = strLine.find( '=' , 0 ) if ( find_pos ! = - 1 ) : return strLine[ 0 : find_pos].strip() return strLine.strip() def RightSideOfEqual( strLine ) : strLine = RemoveLuaComment( strLine ) find_pos = strLine.find( '=' , 0 ) if ( find_pos ! = - 1 ) : return strLine[find_pos + 1 : len (strLine)].strip() return strLine.strip() def main(argv) : input_file = argv[ 1 ] f = open ( input_file, 'r' ) filelist = f.readlines() for eachline in filelist : if ( IsExistOnlyOneEqual( eachline ) = = False ) : print "\n[Error Line] " , eachline else : print "\n[Total]\n" , eachline print "\n[Remove Comment]\n" , RemoveLuaComment( eachline ) print "\n[Left Side]\n" , LeftSideOfEqual( eachline ) print "\n[Right Side]\n" , RightSideOfEqual( eachline ) f.close() if __name__ = = "__main__" : main(argv = sys.argv) |
[Python] Ini 파일 형식 라인별로 읽어서 "=" 연산자 양쪽 값 분리
프로그래밍/Python
2010/02/10 22:31
글 걸기 주소 : 이 글에는 트랙백을 보낼 수 없습니다
덧글을 달아 주세요