python问题!!!!

我想写一个比较三个数的函数,代码如图所示然后调用的时候会有这样的问题:求解答,哪里错了?... 我想写一个比较三个数的函数,代码如图所示

然后调用的时候会有这样的问题:

求解答,哪里错了?
展开
 我来答 举报
浩星辰锟su
2013-05-13 · TA获得超过6765个赞
知道大有可为答主
回答量:975
采纳率:0%
帮助的人:466万
展开全部

您好,您这里出错的原因是compare1函数定义有问题。您在程序里面定义函数为compare1(x,y,z,n)但是您在调用函数的时候只写了compare1(1,2,3),对比至少,您没有对n进行定义。您可将代码改为如下:

1
2
3
4
5
6
7
8
9
10
11
12
def compare1(x,y,z):
   n=0
   if x==y==z:
      print x
   elif x>y:
      n=x
   else:
      n=y
   if n>z:
      print n
   else:
      print z

另外,您这个程序其实只是为了输出最大值,完全可以用更加简便的max函数,如下:

1
2
def compare2(x,y,z):
   print max(x,y,z)

这样达到的效果是完全一样的~

compare1(1,2,3)输出结果是3

compare2(1,2,3)输出结果也是3


若不懂,请追问,望采纳!

栩箭
2013-05-12 · TA获得超过5311个赞
知道大有可为答主
回答量:3036
采纳率:0%
帮助的人:1722万
展开全部
import的时候换成
from functionality import *
更多追问追答
追问
结果是一样的
追答
把你的文件结构什么的发出来看看。比如有一些什么文件,文件里面有啥。特别是这个functionality
另外,用文本,别用图片。
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
allpublic_use
2013-05-12 · TA获得超过268个赞
知道小有建树答主
回答量:566
采纳率:0%
帮助的人:225万
展开全部
显然 ,参数n漏了呗
追问
对啊,但是参数是在函数里面初始化的啊
追答
那就把n去了
或者def 改成
def compare1(x,y,z,n=0):

即可给一个defaut 值
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式