【发布时间】:2013-07-12 15:01:52
【问题描述】:
我正在尝试遍历 CSV 文件并从每一行中获取一个项目并将其插入 GUI 中的 QLineEdit。
当我单击按钮 self.nextAppointment 时,它会填充该字段,但始终使用 CSV 文件中最后一行的电子邮件地址。随后单击该按钮似乎没有执行任何操作。
我认为我没有正确创建/使用生成器,但我不确定。
我如何遍历 CSV 文件并获取我想要返回的字段,以便我可以为 CSV 的每一行一次将其放入 GUI。
以下是相关代码:
self.nextAppointment.clicked.connect(self.nextFunction)
def nextFunction(self):
self.emailGenerator = self.nextEmail()
for email in self.emailGenerator:
self.toField.setText(email)
def nextEmail(self):
with open('assigned_appt_leads.csv', 'rb') as infile:
rdr = csv.DictReader(infile, dialect='excel')
for line in rdr:
yield line['Email Address']
我已经使用以下方法进行了测试,它获取了第一个电子邮件地址,但按下一步不会将其更改为下一行的电子邮件地址。
def nextFunction(self):
self.emailGenerator = self.nextEmail()
self.toField.setText(self.emailGenerator.next())
【问题讨论】:
标签: python python-2.7 pyqt pyqt4 generator