Python代码无法在jupyter中打印函数输出

时间:2019-05-22 09:11:32

标签: python function output jupyter

我已经定义了函数,但是当我尝试使它们打印时,它们将打印为< function salinity_seawater at 0x2537f670 >

我尝试过多次重启,但是没有任何作用。

这是代码部分:

def sal_of_seawater(l): 
        sal_of_seawater = (-0.0222*l)+34
        return sal_of_seawater

    print("A latitude of", l, "equals a salinity value of", sal_of_seawater)

代码的输出:

A latitude of 45 equals a salinity of <function sal_of_seawater at 0x109f29730>

5 个答案:

答案 0 :(得分:0)

您的打印语句有误。要获取函数的返回语句,请调用它

print("A latitude of", l, "equals a salinity value of", sal_of_seawater(10))

print("A latitude of", l, "equals a salinity value of", sal_of_seawater(l))

相应地定义l

答案 1 :(得分:0)

这应该解决

def sal_of_seawater(l): 
        res = (-0.0222*l)+34
        return res

l = 45

print("A latitude of", l, "equals a salinity value of", sal_of_seawater(l))

答案 2 :(得分:0)

您可以使用:

l =45
print("A latitude of {} equals a salinity value of {}".format(l, sal_of_seawater(l)))

答案 3 :(得分:0)

下面的代码返回输出:

data=read.csv("C:\\Users\\George\\Desktop\\iris.csv",sep=";",colClasses=c(NA, NA, NA,NA,"NULL"));data=data[-151,] pca=prcomp(data) plot(pca$x[,1],pca$x[,2]) print(pca$x[141,2])

我没有返回计算值,而是直接将A latitude of 45 equals a salinity value of 33.001放在print

然后调用def sal_of_seawater(l):返回输出。

sal_of_seawater(<some value>)

答案 4 :(得分:0)

首先,假设您不熟悉Stackoverflow,请检查Stackoverflow中可用的各种格式设置选项,以便其他人可以清楚地了解您的代码的作用。例如,我猜你的代码应该是这样的: (用于代码格式Ctrl + K)

def sal_of_seawater(l): 
        sal_of_seawater = (-0.0222*l)+34
        return sal_of_seawater
l = 45
print("A latitude of", l, "equals a salinity value of", sal_of_seawater)

打印功能在这里正常工作,问题在于调用调用sal_of_seawater(l)的打印函数中未传递参数的函数调用sal_of_seawater将解决此问题。

Python中的函数本身就是一个对象,并且一个对象具有一定的价值 由于您没有传递任何参数,因此该函数不会在此处运行,因此将返回默认值0x109f29730,即对象的位置。

PS:您可以通过以下链接来了解有关Python中函数的更多信息:https://www.guru99.com/functions-in-python.html