繁体   English   中英

它没有打印我想要打印的所有内容

[英]Its not printing everything I want it to print

此代码需要接受一条线上的两个点,并在方程y = m*x + b. (m = (y1 - y2) / (x1 - x2)中返回mb的值。 y = m*x + b. (m = (y1 - y2) / (x1 - x2)b = y1 - (m*x1) 。我编写了代码来做到这一点,但我在列出所有找到的信息的部分:("第一点是:”,“和:”,“第二点是:”,“m =”,“B =”等)。我注意到从返回打印列表中它只运行第一个打印并且不是' t 运行所有 5 个打印。我尝试添加 \n 以将其写入新行但它不起作用。我怎样才能让它列出我编码的每个返回打印并说出它随机具有的 2 个点选择。

import sys
import sys
import math
import random

number = random.randint(1,100)
number2 = random.randint(1,100)
number3 = random.randint(1,100)
number4 = random.randint(1,100)



def line_equation(x2,y2,x1,y1):
    rise = y2-y1
    run = x2-x1
    m = rise/run
    b = y2/(m*x2)
    return print("m = " + str(m) + " and b = " + str(b))
    return print("the first point is: ",number)
    return print("and: ",number2)
    return print("the second point is: ",number3)
    return print("and: ",number4)

line_equation(number, number2, number3, number4)

“return” 将真正返回给调用者(因此离开函数)。 这就是不打印剩余行的原因。

这应该做你想要的。

def line_equation(x2,y2,x1,y1):
    rise = y2-y1
    run = x2-x1
    m = rise/run
    b = y2/(m*x2)
    print("m = " + str(m) + " and b = " + str(b))
    print("the first point is: ",number)
    print("and: ",number2)
    print("the second point is: ",number3)
    print("and: ",number4)
    return # This is optional

您在第一次打印时从 function 返回,删除所有return关键字。

当您希望函数/代码流结束时,您指定return return通常是在 function 中执行的最后一件事(不是 100% 真实,但通常是)。

另外,在实际需要返回值时使用return ,如果不需要,您可以结束function。 所以你的代码可能应该是:

import sys
import sys
import math
import random

number = random.randint(1,100)
number2 = random.randint(1,100)
number3 = random.randint(1,100)
number4 = random.randint(1,100)



def line_equation(x2,y2,x1,y1):
    rise = y2-y1
    run = x2-x1
    m = rise/run
    b = y2/(m*x2)
    print("m = " + str(m) + " and b = " + str(b))
    print("the first point is: ",number)
    print("and: ",number2)
    print("the second point is: ",number3)
    print("and: ",number4)

line_equation(number, number2, number3, number4)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM