python - Python CSV:到达空行后循环停止
问题描述
我想读取由我的其他脚本生成的 CSV 文件,我需要同时检查 2 列。问题是我的循环停止了,因为某些行有空值并且它无法达到以下值。例如:
- 哈希 1111
- 哈希 2222
- 哈希 3333
- 哈希 4444
- 哈希 5555
- 哈希
- 哈希
- 哈希 6666
我无法进一步阅读第 5 点,因为 6 和 7 有空值,我还需要阅读 8。这是我的代码。
import csv
with open('vts.csv') as csvDataFile:
csvReader = csv.reader(csvDataFile, delimiter=';')
next(csvReader)
VTs = []
for row in csvReader:
VT = row
VTs.append(VT)
for row in VTs:
print(row[0],row[4])
有没有办法在不手动排序 Excel 的情况下继续列出?
解决方案
首先,csv 文件不是Excel 文件。前者是文本分隔文件,后者是二进制文件。
接下来,您的问题不在于阅读时间: csv 模块可以轻松地接受其行中具有可变数量字段的文件,包括只会给出空列表的row
空行。
所以修复只是:
...
for row in VTs:
if len(row) > 4:
print(row[0],row[4])
推荐阅读
- java - JComboBox java.lang.Integer 在加载器“bootstrap”的模块 java.base 中/在加载器“app”的未命名模块中
- flutter - 如何测试取决于来自提供者的数据的颤振小部件
- sockets - 向 Google Web App 上的所有客户端发送数据
- arrays - 解码 JSON 文件时收到 DecodingError.dataCorrupted 错误
- python - 如何从 sqlalchemy 中的 session/engine/meta 获取表名及其数据类型?
- c# - App_Code“添加类”灰显
- jquery - 替换 URL 中的 User_ID
- javascript - 具有输入属性“必需”和“模式”的表单不起作用
- reactjs - SignalR 和 React - 由于底层连接被关闭而取消调用
- javascript - 在不同的项目 NPM 命令中克隆 Git 后出错