我遇到的一个简单的难题是,在Python中定义和调用两个相互利用的函数

2024-06-25 23:19:07 发布

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

所以我正在学习如何用Python(我的第一种编程语言)编程,而且我对它完全是个新手。我也在使用inventwithpythoncodecademy.com. codecademy的问题是,他们真的不太擅长教授编程,而我将其与inventwithpython进行比较。在其中一个教程中,他们希望我定义两个函数,并使用彼此调用它们。我想我已经很接近正确的方法了,我觉得正确的方法就是直视我的脸。代码如下:

def cube(number2):
    pine =  number2**3 
    return pine

def by_three(number2):
    if number2 % 3 == 0:
        return cube(number2)
    else:
        return False

number2 = raw_input("Pick a number")

by_three(number2)

下面是我从接口得到的错误:

Traceback (most recent call last):
  File "python", line 13, in <module>
  File "python", line 6, in by_three
TypeError: not all arguments converted during string formatting

我试着将pine转换成字符串格式,但是没有成功,所以我把它恢复了。Codecademy在我看来很糟糕,我只是在使用它,因为除了inventwithpython站点之外,我找不到其他好的资源来学习如何使用Python编程。你知道吗


Tags: 方法inbyreturndef编程line编程语言
2条回答

你没有把号码打出来。使用int()函数来完成。你知道吗

def cube(number2):
    pine = number2**3
    return pine

def by_three(number2):
    if number2 % 3 == 0:
        return cube(number2)
    else:
        return False

number2 = int(raw_input("Pick a number"))

print by_three(number2)

raw_input()返回字符串。你试图用一个字符串的模表达式,这就是为什么你会得到这个错误。你知道吗

使用^{}函数将字符串转换为整数:

number2 = int(raw_input("Pick a number"))

顺便说一句,codecademy并没有那么糟糕:p。它只是因为不同的作者创建不同的教程而变得混乱。你知道吗

相关问题 更多 >