我在一个名为nameid_cityid.txt的目录中有一堆文件,nameid 和 cityid 是mydata表中 name (integer(10))和 city (integer(10))的id。
虽然以下解决方案有效,但我正在进行类型转换,因为 fetchall 获取 'L' 并且 nameid、cityid 的文件名元组是字符串,..
如果你能提出一个 pythonic 或更优雅的方式来做同样的事情,那对我和社区来说太棒了!
我要实现的目标: 从数据库中没有记录的目录中查找那些文件,然后对该文件执行某些操作,例如解析/移动/删除它。
MySQL 表 mydata :
nameid cityid
15633 45632
2354 76894
Python :
for pdffile in os.listdir(filepath):
cityid, nameid = pdffile.strip('.txt').split('_')[0], pdffile.strip('.txt').split('_')[1]
cursor.execute("select cityid, nameid from mydata")
alreadyparsed = cursor.fetchall()
targetvalues = ((str(cityid), str(nameid)) for cityid, nameid in alreadyparsed)
if (int(cityid), int(nameid)) in alreadyparsed:
print cityid, nameid, "Found"
else:
print cityid, nameid, "Not found"