所以我有一个脚本可以检查1天以前的文件。如果此目录中没有不到一天的文件(如今天创建的文件),我希望我的脚本向我发送电子邮件。
我的剧本,让我告诉你:
new_files = [] #list of files newer than 1 day
for f in os.listdir(path):
fn = os.path.join(path,f)
ctime = os.stat(fn).st_ctime
if ctime > now - 1 * 86400:
#this is a new file
new_files.append(fn)
if new_files(): #checks the list
sendmail #calls sendmail script that sends email
所以,if new_files():
是我检查我的列表以查看是否附加了任何内容。如果没有,那么该过程失败,我们需要知道,通过向我们的售票系统生成警报电子邮件。这就是我的问题所在。我不知道如何检查清单。当我运行脚本时,我得到TypeError: 'list' object is not callable
。
这样做的正确方法是什么?
答案 0 :(得分:1)
对于序列,(字符串,列表,元组),请使用空的事实 序列是错误的。
Yes: if not seq:
if seq:
No: if len(seq)
if not len(seq)
代码:
if new_files:
答案 1 :(得分:0)
计算事件将有所帮助。
new_files = [] #list of files newer than 1 day
for f in os.listdir(path):
fn = os.path.join(path,f)
ctime = os.stat(fn).st_ctime
if ctime > now - 1 * 86400:
countit=new_files.count(fn) #count previous occurence
#this is a new file
new_files.append(fn)
if new_files.count(fn)>countit:
sendmail #calls sendmail script that sends email