python - 为什么我的循环在一次迭代后停止?
问题描述
我正在努力了解为什么我的循环在一次迭代后停止。
我的代码:
import os
def open_data(fpath):
counter=0
for i in os.listdir(fpath):
if os.path.isfile(os.path.join(fpath,i)):
#print counter
f=open(os.path.join(fpath,i),"r")
#counter=counter+1
return counter,f.readlines()
#f.close()
x=open_data("C:/Users/manchester/.ipynb_checkpoints/txt_sentoken/practice_")
基本上,我试图遍历目录中包含电影评论的所有文件。我首先打算使用一个函数从目录中读取所有文件,然后我需要说 70% 的评论用于训练 10% 用于测试 10% 用于验证 10% 用于超参数样本。但是我只是无法克服尝试使用函数读取所有文件的第一个障碍。
我试过使用 list 和 append 但这也不起作用。
解决方案
那么这样代码只会返回目录的最后一个文件。
您没有对打开的文件执行任何操作,然后返回最后一个文件。
我想您应该将其附加到f.readlines
列表中,然后在函数末尾返回列表。
计数器应该可以工作,返回目录中的文件数
推荐阅读
- ios - 更新到 Xcode 10.2 后出现 PDFKit 的问题。有什么办法解决吗?
- java - 使用 Volley 提取整数
- ios - iOS 12.2 上的 PDFKit 崩溃
- angular - 在 Angular 7 中使用 OpenLayers 5 typescript extent.js
- laravel - 如何使用 auth0 在 laravel 中设置不同的身份验证保护
- c++ - 我不断得到预期;错误,我不确定为什么
- web-services - Web 服务客户端生成 - 存根与 Soap 消息
- powerbi - POWER BI 计算列,包含来自不同表的数据和键值
- ansible - 角色覆盖剧本中的任务
- reactjs - 如何从新页面和窗口中的 onclick 事件渲染中获取结果