如何在python 3.0中执行flipside功能?

时间:2017-02-27 19:49:06

标签: python python-3.x

美好的一天同事们!

这是我为我的python类获得的指令,我正在努力使输入显示为我想要的。

flipside(s)接受一个字符串s并返回一个字符串,其前半部分是s的下半部分,后半部分是第一个。如果长度为奇数,则输入字符串的前半部分应比后半部分少一个字符。例如,绳子地毯将具有输出petcar。输入地毯将有输出宠物车。

这是我目前的代码:

def flipside():

    print("This program will return second half as first half of what you write.")
    s = input("Type in any word: ")

    newWord = len(s)%2
    print("DEBUG: ",newWord)

    if newWord == 1:
        print("DEBUG: ODD")
        print (s[3:]+s[:4])
    else:
        print("DEBUG: EVEN")
        print(s[4:]+s[:4])

我真的很困惑我应该在括号内输入什么来正确地切割单词。我使用谷歌搜索了这个功能的解决方案,但都没有。

任何有经验的Python程序员都可以向我解释一下我的代码错误吗?我想学习。

我正在使用python 3.0

1 个答案:

答案 0 :(得分:1)

这不是Python编程的问题,只是找到分割点。无论你发现什么,你的新字符串将是你提供的第二种形式:

s[div_pt:] + s[:div_pt]

你给出的“ODD”案例重复了第4个字母。

整数师应该为你解决问题:

div_pt = len(s) // 2

你可以把它们放到你的程序中,看看你得到了什么吗?尝试几个不同的例子,例如“地毯”和“烟灰缸”。