我正在使用3个参数创建一个无用的函数,输出为'That was a waste of my time'
我尝试的代码是:
def useless("Hello, 95, "jello"):
x = 'That was a waste of my time'
return x
应该有一个输出但没有...而且它还说我在第一行发出语法错误。
输出应为'This was a waste of my time'
我无法发现任何有问题的东西......我该怎么办? 我没有得到输出,我也有语法错误
答案 0 :(得分:2)
您没有获得任何输出,因为您有语法错误。
您的功能参数无效;它们是a)不是那样有效的Python,而b)不完整:
def useless("Hello, 95, "jello"):
"Hello
字符串缺少右括号,但您无法将文字值放在函数头中。删除括号之间的所有内容:
def useless():
x = 'That was a waste of my time'
return x
你的其余功能很好:
>>> def useless():
... x = 'That was a waste of my time'
... return x
...
>>> useless()
'That was a waste of my time'
答案 1 :(得分:1)
def useless("Hello, 95, "jello"):
x = 'That was a waste of my time'
return x
应该是......
def useless(Hello, value, jello):
x = 'That was a waste of my time'
return x
你不能将字符串或int作为变量名。您在设置args时声明变量。
也只是def useless()
没有args在你的场景中更好。
答案 2 :(得分:1)
首先,您错过了"
中以useless
结尾的结束Hello
。 Python现在认为你想要包含"Hello, 95, "
而在jello
它会被混淆为地狱,等等。
此外,您似乎对函数如何使用参数和参数有一个基本的误解。首先,让我们来定义两者之间的差异。
参数是您在定义函数时放入函数的内容:
def Function(parameter_1,parameter_2):
a = parameter_1
b = parameter_2
参数同时是您在调用函数时传递给函数的值:
Function(argument_1,argument_2)
用数学术语思考,当你调用X =的函数时?和Y =?,你说:
"call Function, and plug in "value" for x and "value2" for y"
使用这些示例运行,您可以通过两种方式重写函数useless
:
你不能做任何参数,它总会返回“x”:
def useless():
x='That was a waste of my time'
return x
或者,您可以通过函数中的参数传递参数,以便为您的函数提供更大的灵活性:
def useless(x):
return x
useless('That was a waste of my time')
要么返回同一行。
最后,确保您了解return
和print
之间的区别;使用函数时,您并不总是希望打印结果,但仍希望获得它。那是return
的工作地点;调用该函数将带回您使用return
行所做的任何值。
例如,在我没有参数定义的第一个useless
中,函数不接受任何参数,并且在定义时始终返回x
。
另一个{{1}但是,我定义的本质上是一个“打印”函数,因为它接受你给出的参数并自动返回它。
为什么useless
在这些情况下而不是return
}?既然您已经print
了,那么您可以选择告诉Python return
或存储print
!
感谢useless
,您可以写下:
return
或
print useless(x)
现在,您可以随意使用variable = useless(x)
,即使您只是variable
。
我希望我的过度解释不会让人不知所措。如果您仍然不理解,请尝试执行Codecademy Python tutorial,这可能会帮助您在概念上掌握所有这些(网站目前并不完全表现,但如果您在{{3}中完成课程},你仍然可以通过教程破解你的方式。)