我是一个初学者,不了解我的代码有什么问题

时间:2020-07-02 04:13:55

标签: python python-3.x

因此,我试图确保,如果数字小于50,则我的代码将打印出Freestyle,并且如果它在51-100的范围内,它将打印蛙泳,最后,如果其大于101,则它将打印蛙泳。将打印出蝴蝶。

我正在尝试将其设置为游泳伴侣和教练使用,以使练习更加有趣。

编辑我没有收到任何输出。

这是我目前的代码:

import random

def swimming():
    x = random.randint(1, 150)
    if x <= 50:
        print("Freestyle")
    elif x >= range(51, 100):
        print("Breaststroke")
    else:
        print("Butterfly")

4 个答案:

答案 0 :(得分:2)

Enter a message: Hello world, how are you 1234 doing? 
There are 24 letters and 4 digits in the message.
The converted text is: hELLO WORLD, HOW ARE YOU 1234 DOING?

这将为您提供输出。

答案 1 :(得分:1)

由于您没有发布自己的代码,因此我整理了一些快速代码,我认为它们可以满足您的要求:

def fun(x):

    if x < 51: # Below 51 (0-50)

        print("Freestyle")

    elif x > 100: # Above 100 (101+)

        print("Butterfly")

    else: # In between (51-100)

        print("Breaststroke")

x是您作为参数放入函数中的数字。

答案 2 :(得分:0)

您的代码仅要求“ def”,意思是“ define”(或者至少是我的解释)。为此(例如,“运行脚本”),您还需要最后将其调出。此外,范围就像一个列表,而不是一个特定的2点,因此调用> = range不起作用。

您的代码应如下所示(最小更改)

import random

def swimming():
    x = random.randint(1, 150)
    if x <= 50:
        print("Freestyle")
    elif x in range(51, 100):
        print("Breaststroke")
    else:
        print("Butterfly")

swimming()

请注意,此时,它将返回用户未指定的随机值。如果您确实想输入一个值,请检查您想游泳的样式,然后循环播放,应该更像这样

import random

def swimming():
    print('What is your number?')
    try:
        x = float(input())
        if x <= 50:
            print("Freestyle")
        elif x in range(51, 100):
            print("Breaststroke")
        else:
            print("Butterfly")
    except:
        print('Input a number please')


while True:
    answer = input('Do you want to continue? (Y/N)\n')
    if answer.lower() == 'y' or answer.lower() == 'yes':
        swimming()
    else:
        print('Thank you for playing.')
        input('Press enter to exit.')
        break

def块中的“ try”和“ except”用于确保输入为数字(整数或十进制)。 “ while True”循环用于“连续工作”(只要输入“ y”或“ yes”或“ Y”或“ YES”)。如果您不喜欢,请删除整个块,然后保留“ swimming()”

继续努力。

答案 3 :(得分:0)

def swimming():
    for i in range(5):
        x=random.randint(1,150)
        if x<=50:
            print("Freestyle")  
        elif x>=51 and x<=100:
            print("Breaststroke")
        else:
            print("Butterfly")

swimming()

您可以使用第一个for循环来获取所需的输入。我认为使用逻辑运算符更容易。