句子反轉

 

句子反轉題:輸入“I am a student.”,則輸出“student. a am I”。

 

本測試測試樣是 "Alice   is a good student.$^”

# word reverse: input "I am a student.", then output "student. a am I"


# input_string = "the sky is blue"
input_string = "Alice   is a good student.$^"
# input_string = "IamAg "


def state_changed(input_string, index_left, index):
    """
        if state is changed, return True, 
        if state is not changed, return False 
    """
    if input_string[index_left] == ' ' and input_string[index] != ' ':
        return True
    elif input_string[index_left] != ' ' and input_string[index] == ' ':
        return True
    else:
        return False


def reverse_word(input_string):
    result = ""
    index_left = 0
    total_length = len(input_string)
    index = 1
    while index < total_length:
        if state_changed(input_string, index_left, index):
            tmp = input_string[index_left: index][::-1]
            print "tmp", tmp
            result += tmp
            index_left = index        
        elif index == total_length-1:  # 如果沒有這一段的話,句子最後的一個單詞就會被消去,比如“Hu Wang Zhou” 在轉換之後,就成了“Wang Hu"。
            tmp = input_string[index_left: index+1][::-1]
            print "tmp", tmp
            result += tmp
            index_left = index        

        index += 1

    print "--------"
    print "intermidate result is:",result            
    print "final result is:", result[::-1]

reverse_word(input_string) 




 

 

 

發佈了40 篇原創文章 · 獲贊 6 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章