设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
查看: 31629|回复: 2
打印 上一主题 下一主题

【Python 第24课】 if的嵌套

[复制链接]

1

主题

0

好友

37

积分

新手上路

Rank: 1

楼主
发表于 2017-11-28 13:24:21 |显示全部楼层
本帖最后由 Imagination 于 2017-11-28 15:04 编辑

def position(x,y):
    if x>0:
        if y>0:
            print ('你输入的(%d,%d)在第一象限'%(x,y))
        elif y<0:
            print ('你输入的(%d,%d)在第四象限'%(x,y))
        else:
            print ('你输入的(%d,%d)在X轴上'%(x,y))
    elif x<0:
        if y>0:
            print ('你输入的(%d,%d)在第二象限'%(x,y))
        elif y<0:
            print ('你输入的(%d,%d)在第三象限'%(x,y))
        else:
            print ('你输入的(%d,%d)在X轴上'%(x,y))
    else:
        print ('你输入的(%d,%d)在Y轴上'%(x,y))

print ('输入坐标值确定象限')
x = int(input('请输入X值:'))
y = int(input('请输入Y值:'))

position(x,y)
问题1,为什么代码里没有return 运行出来,没有NONE。要是我把最后的代码改成answer = position(x,y)  print (answer) 运行就会在最后打出NONE
问题2,能帮我改进一下吗 这个运行要先输入X 敲回车再输入Y 怎么写代码能直接输入X,Y 就运行函数呢
回复

使用道具 举报

1

主题

0

好友

37

积分

新手上路

Rank: 1

沙发
发表于 2017-11-28 19:37:37 |显示全部楼层
woodumpling 发表于 2017-11-28 18:40
1. 你没有return语句,所以没有值被返回出来
2. 那个写法相对复杂些,以py3为例,x, y = [eval(i) for i  ...

可是我把代码最后两句改了一下 ,也没有return语句 却返回None了 是怎么回事呢
def position(x,y):
    if x>0:
        if y>0:
            print ('你输入的(%d,%d)在第一象限' % (x,y))
        elif y<0:
            print ('你输入的(%d,%d)在第四象限' % (x,y))
        else:
            print ('你输入的(%d,%d)在X轴上' % (x,y))
    elif x<0:
        if y>0:
            print ('你输入的(%d,%d)在第二象限' % (x,y))
        elif y<0:
            print ('你输入的(%d,%d)在第三象限' % (x,y))
        else:
            print ('你输入的(%d,%d)在X轴上' % (x,y))
    else:
        print ('你输入的(%d,%d)在Y轴上' % (x,y))

print ('输入坐标值确定象限')

x = int(input('请输入X值:'))  
y = int(input('请输入Y值:'))


answer = position(x,y)
print (answer)

回复

使用道具 举报

1

主题

0

好友

37

积分

新手上路

Rank: 1

板凳
发表于 2017-11-29 12:21:36 |显示全部楼层
crossin先生 发表于 2017-11-28 23:39
没有return默认返回None,相当于 return None
你print了,它就被输出了

感谢crossin老师解惑
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-5-19 01:48 , Processed in 0.026441 second(s), 22 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部