Crossin的编程教室

标题: 新人求教!!! [打印本页]

作者: king    时间: 2017-2-8 16:52
标题: 新人求教!!!
本人初学python,对python很有兴趣,一直是看crossin的编程教室学习python的。在此感谢crossin老师的教程,让我有了学习Python的机会。
另外我有个疑问想求教。
我写了一个坐标系象限判断程序,但不知道如何让程序对控制台输入的坐标点进行判断。用input()无法对两个数字进行判定。
我尝试了很多次最终使用x,y=input()来判定,但是这个语句有时错误,有时又能正常运行,不知道怎么回事。
以下是我写的程序代码:
n=1
while n==1:
    x,y=input()
    if x>0:
        if y>0:
            print'根据程序判断您输入的坐标点位于第一象限'

    if x>0:
        if y<0:
            print'根据程序判断您输入的坐标点位于第四象限'

    if x<0:
        if y<0:
            print'根据程序判断您输入的坐标点位于第三象限'

    if x<0:
        if y>0:
            print'根据程序判断您输入的坐标点位于第二象限'

    if x==0:
        if y>0:
            print'根据程序判断您输入的坐标点位于y轴的正半轴上'
    if x==0:
        if y<0:
            print'根据程序判断您输入的坐标点位于y轴的负半轴上'        
    if y==0:
        if x>0:
            print'根据程序判断您输入的坐标点位于x轴的正半轴上'
    if y==0:
        if x<0:
            print'根据程序判断您输入的坐标点位于x轴的负半轴上'
    if x==0:
        if y==0:
            print'根据程序判断您输入的坐标点位于原点'

另外还有一个问题,如何让程序根据输入的坐标点来进行相对回应。
我的意思就是假如我输入坐标点(1,1),程序就会回答(1,1)位于第一象限这样的回答。
我只学会了一个数字的相对回应吗,两个数字的始终摸不透该怎么写,希望大家能指教一下。

作者: sxyclylq1000    时间: 2017-2-8 21:20
x,y=input()这句如果不对的话就分开来输入啊,比如x=input('Plase input x=:');y=input('Plase input y=:')
至于最后的回应该问题,print (x,y)+'坐标位于第一象限'就可以了
作者: king    时间: 2017-2-8 22:56
sxyclylq1000 发表于 2017-2-8 21:20
x,y=input()这句如果不对的话就分开来输入啊,比如x=input('Plase input x=:');y=input('Plase input y=:') ...

感谢你的回答!我现在才知道原来input()的括号里面可以输入语句的...
第一个问题是解决了,不过你给的第二个问题的解决方法有些问题。
我按照你说的输入了 print (x,y)+'坐标位于第一象限'
提示错误,原因是没有使用str()对x,y进行类型转化,后来我自己加上了str又提示错误说str不能转化超过1个数字。
最终我尝试着拆分str,改成了print '('+str(x),str(','),str(y)+')位于第一象限',没想到居然成功了。
虽然语句不美观,但还能用就行。
作者: sxyclylq1000    时间: 2017-2-8 23:22
print(str(x),str(y))+'坐标位于第一象限'
哈哈,多看看别人写的代码就知道了,我也是刚开始学,这些天看的头昏脑涨的
作者: king    时间: 2017-2-9 12:29
sxyclylq1000 发表于 2017-2-8 23:22
print(str(x),str(y))+'坐标位于第一象限'
哈哈,多看看别人写的代码就知道了,我也是刚开始学,这些天看的 ...

print(str(x),str(y))+'坐标位于第一象限'有问题吧。
你觉得能打双重括号吗?
作者: crossin先生    时间: 2017-2-9 14:22
king 发表于 2017-2-9 12:29
print(str(x),str(y))+'坐标位于第一象限'有问题吧。
你觉得能打双重括号吗?

能不能这么输,自己在python环境里试一下就好啦,一行代码的事情

另外关于让输出美观且简洁,建议你参考一下 《字符串格式化》 那课里的内容




欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/) Powered by Discuz! X2.5