【发布时间】:2020-12-20 16:45:25
【问题描述】:
我是 Python 新手,我想使用来自多列 CSV 文件的数据,一行一行地运行一个函数,每次运行之间会有一些延迟。
这是我想要实现的:
-
从一个范围内的第一个 CSV 文件读取(例如,第 0 行到第 3 行)
-
使用一行的数据,把右边的参数部分放在函数里面,有些延迟,下一行也一样。
-
一些延迟,然后转到下一个 CSV 文件,直到最后一个 CSV 文件。
我已尝试以下代码,但无法正常工作。以下代码适用于一列 CSV 文件。
我想用 CSV 文件中的数据填充 4 个参数, 使用与函数内的参数名称相同的列标题名称。
示例 csv 文件:
img_path,desc_1 title_1,link_1
site.com/image22.jpg,someTitle,description1,site1.com
site.com/image32.jpg,someTitle,description2,site2.com
site.com/image44.jpg,someTitle,description3,site3.com
from abc.zzz import xyz
path_id_map = [
{'path':'file1.csv', 'id': '12345678'},
{'path':'file2.csv', 'id': '44556677'}
{'path':'file3.csv', 'id': '33377799'}
{'path':'file4.csv', 'id': '66221144'}]
s_id = None
for pair in path_id_map:
with open(pair['path'], 'r') as f:
for i in range(0, 3):
zzz.func1(img_path=f.readline().rstrip(','), title_1=f.readline().rstrip(','),
desc_1=f.readline().rstrip(','), link_1=f.readline().rstrip(','), B_id=pair['id'],
s_id=s_id)
return zzz.func1(img_file=img_path, title_1=title_1, desc_1=desc_1,
link_1=link_1, B_id=B_id, s_id=s_id)
time.sleep(25)
感谢您的帮助。
【问题讨论】:
-
看看 python 的 csv 模块,它会让你更容易处理 csv 文件。这是一个教程; realpython.com/python-csv
标签: python python-3.x nested-loops