我在Windows上使用Python 2.7,並且正在編寫同時使用時間和日期時間模塊的腳本。我以前做過這個,但是python似乎對加載這兩個模塊和我之前使用的方法似乎沒有工作都很敏感。這裏是我使用的不同的語法和我目前得到的錯誤。似乎無法在Python中的同一腳本中使用導入時間和導入日期時間
首先我想:
from datetime import *
from time import *
...
checktime = datetime.today() - timedelta(days=int(2))
checktime = checktime.timetuple()
...
filetimesecs = os.path.getmtime(webgatelogdir + '/' + fn)
file = webgatelogdir + '/' + fn
filetime = localtime(filetimesecs)
...
else: time.sleep(60)
錯誤:
else: time.sleep(60) AttributeError: 'builtin_function_or_method' object has no attribute 'sleep'
然後我嘗試:
from datetime import *
from time import *
...
checktime = datetime.today() - timedelta(days=int(2))
checktime = checktime.timetuple()
...
filetimesecs = os.path.getmtime(webgatelogdir + '/' + fn)
file = webgatelogdir + '/' + fn
filetime = localtime(filetimesecs)
...
#else: time.sleep(60) # comment out time.sleep statement
和我沒有錯誤,但沒有睡眠延遲無論是。
接着我嘗試:
from datetime import *
import time
...
checktime = datetime.today() - timedelta(days=int(2))
checktime = checktime.timetuple()
...
filetimesecs = os.path.getmtime(webgatelogdir + '/' + fn)
file = webgatelogdir + '/' + fn
filetime = localtime(filetimesecs)
...
#else: time.sleep(60) # comment out time.sleep statement
ERROR:
filetime = localtime(filetimesecs) NameError: name 'localtime' is not defined
另一種修飾和我嘗試這樣做:
import time
import datetime
...
checktime = datetime.today() - timedelta(days=int(2))
checktime = checktime.timetuple()
...
filetimesecs = os.path.getmtime(webgatelogdir + '/' + fn)
file = webgatelogdir + '/' + fn
filetime = localtime(filetimesecs)
...
#else: time.sleep(60) # comment out time.sleep statement
ERROR
checktime = datetime.today() - timedelta(days=int(2)) AttributeError: 'module' object has no attribute 'today'
最後,我想這一點:
import time
from datetime import *
...
checktime = datetime.today() - timedelta(days=int(2))
checktime = checktime.timetuple()
...
filetimesecs = os.path.getmtime(webgatelogdir + '/' + fn)
file = webgatelogdir + '/' + fn
filetime = localtime(filetimesecs)
...
#else: time.sleep(60) # comment out time.sleep statement
錯誤:
checktime = datetime.today() - timedelta(days=int(2)) AttributeError: 'module' object has no attribute 'today'
所以我不知道如何讓這兩個模塊很好地發揮。或者我需要另一種方法來延遲腳本。
對此提出建議?或者指出我犯的錯誤?
謝謝。
好吧,我一直在編碼和測試,而你們一直在回答(謝謝!)。以下是我將導入行更改爲'從導入時間,睡眠,本地時間 from datetime import datetime,timedelta',它使所有的東西都可以工作,除了sleep語句。如果我使用'time.sleep(60)',我得到_AttributeError:'builtin_function_or_method'對象沒有'sleep'屬性,但是如果我使用'time.time.sleep(60)',我會得到相同的錯誤。 – user1070061
好吧,我一直在編碼和測試,而你們一直在回答(謝謝!)。以下是我將導入行更改爲: from time import time,sleep,localtime from datetime import datetime,timedelta 它使所有的東西都可以工作,除了sleep語句。在'time.sleep(60)'和'time.time.sleep(60)'之後,最後的工作是'sleep(60)' – user1070061
相關:[python「import datetime」v.s. 「從datetime導入日期時間」](http://stackoverflow.com/q/15707532/4279)。還有'datetime.time'類。 – jfs