如何在python3.0中实现flipside函数?

2024-10-02 06:31:57 发布

您现在位置:Python中文网/ 问答频道 /正文

各位程序员,大家好!你知道吗

这是我为我的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])

我真的不知道应该在括号里键入什么来正确地切分单词。我已经用google搜索过这个函数的解决方案,但没有一个是有效的。你知道吗

有经验的Python程序员能向我解释一下我的代码哪里做错了吗?我想学习。你知道吗

我正在使用python3.0


Tags: 字符串代码debugdef指令字符程序员奇数
1条回答
网友
1楼 · 发布于 2024-10-02 06:31:57

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

s[div_pt:] + s[:div_pt]

你给的“奇怪”的箱子重复了第四个字母。你知道吗

整数除法应该可以为您解决问题:

div_pt = len(s) // 2

你能把这些放进你的程序里看看你得到了什么吗?尝试几个不同的例子,比如“地毯”和“烟灰缸”。你知道吗

相关问题 更多 >

    热门问题