簡體   English   中英

將函數結果存儲到變量中

[英]Store function result into variable

我試圖將函數的結果保存到一個變量中並在屏幕上打印該變量,但是當我打印時我看到“無”。
這個怎么修?

import time;


def hours():
    localtime =  time.localtime(time.time())
    print (localtime.tm_hour)

def minutes():
    localtime =  time.localtime(time.time()) 
    print (localtime.tm_min)

def seconds():
   localtime =  time.localtime(time.time())     
   print (localtime.tm_sec)


hours()
minutes()
seconds()

var = hours()
print(var)

您需要返回一個將存儲到變量中的值。

這邊走 :

def myfunction():
    value = "myvalue"
    return value

var = myfunction()
print(var)

>>> "myvalue"

目前你只是在你的函數中打印值,而不是返回它,這是兩件不同的事情。

編輯:另請注意,當沒有 return 指令時,默認返回值為None

您需要返回localtime.tm_hourprint

def hours():
    localtime =  time.localtime(time.time())
    print (localtime.tm_hour)
    return localtime.tm_hour

您沒有返回值。 腳本應該這樣做:

import time;


def hours():
    localtime =  time.localtime(time.time())
    print (localtime.tm_hour)
    return localtime.tm_hour

In [11]: var = hours()
18
In [12]: print(var)
18

有關如何使用 return 的信息,請參閱https://docs.python.org/3.5/tutorial/controlflow.html#defining-functions

我能夠在函數定義中使用 return 進行此操作

def hourMin ():
    localtime = time.localtime(time.time())
    return '{0}{1}{2}'.format(localtime.tm_hour, localtime.tm_min, localtime.tm_sec)

def dateDay ():
    localtime = time.localtime(time.time())
    return '{0}{1}{2}'.format(localtime.tm_mday, localtime.tm_mon, localtime.tm_year)

通話區

def rannum ():
    for x in range(1):
        valo = random.randint(1,21)*5

    TimeHour = hourMin()
    TimeDate = dateDay()
    print ('Time is ' + str(hourMin()))
    path = "/tmp/temp/"
    curr = path + str(valo) + str(TimeDate)
    try:
        os.mkdir(curr)
    except:
        print('Creation of the directory %s failed' % path)
    else:
        print('Directory %s created ' % curr)

rannum()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM