python代码自动停止工作
我在raspberry pi上有一段简单的代码,它生成一个.txt文件列表,在json对象中对列表进行编码并将其发送到客户端:python代码自动停止工作,python,list,file,raspberry-pi,Python,List,File,Raspberry Pi,我在raspberry pi上有一段简单的代码,它生成一个.txt文件列表,在json对象中对列表进行编码并将其发送到客户端: def file_list(conn): filelist = [] os.chdir("/home/pi/TempLog") for file in glob.glob("*.txt"): filelist.append(file) print file object = json.dumps(filel
def file_list(conn):
filelist = []
os.chdir("/home/pi/TempLog")
for file in glob.glob("*.txt"):
filelist.append(file)
print file
object = json.dumps(filelist)
conn.sendall(object)
这在某一点上确实有效,但现在它没有生成文件列表,“打印文件”什么也没有显示
我已确保“/home/pi/TempLog”文件夹中有文本文件,并确保路径正确。我所做的唯一代码更改是发送到的客户机,但我将这些更改注释掉了,仍然不起作用
有人知道可能会发生什么吗?要进行调试,请尝试
import os
os.chdir("/home/pi/TempLog")
print(os.path.abspath(os.curdir)) # show full path to current dir
print(os.listdir()) # show what files it can see
您没有调用函数为了确保使用了for循环,请在glob.glob(“*.txt”)中的
for文件之后添加一个打印“test”
:
到cricket:是的,我正在调用它,我只是没有显示该部分。如果我添加像“print“hello”这样的print语句,它将打印“hello”。请尝试在地址栏中输入完整的“C://../home/pi/TempLog”或其他内容。并在for循环之前为cwd生成一个print语句,以再次检查您是否在正确的目录中。我唯一能做的事情是for循环正在查看不正确的目录,没有.txt文件。并且尝试打印len(glob.glob(“*.txt”)
这些打印语句显示了正确的路径和目录内容。文本文件名是否以句号开头<代码>*与引导周期不匹配(特殊情况,请参阅帮助(glob.glob)
)。不,没有周期第一个是'2017-06-27',第二个是'tedyd'OK无所谓我发现了问题。显然,您需要手动将.txt添加到文件名中。哈哈,是的,所有由编程语言创建的文件都需要扩展名。很高兴你找到了解决办法。