我正在尝试编写一个从Excel文件中读取的脚本作为模板,然后根据从.txt文件中读取的内容插入新数据。
我正在使用xlrd
模块进行阅读。目前,我被困在剧本的阅读部分。
我计划每次将rowx
和colx
参数变量递增1,因此在Excel文件中搜索每个单元格。但是,似乎Python的参数变量无法修改?
我的脚本中的增量改为修改外部变量。有没有办法实现逐个单元格值搜索?
# Define variables
switch1 = 1
count = 0
rowx = 0
colx = 0
# Loop
while switch1 == 1 and count < totalCells:
print "AAAA"
cellValue = "Long string in here....."
if sh.cell_value(rowx=0, colx=0) == cellValue:
print "BBBB"
switch1 = 0
rowx += 1
colx += 1
count += 1
答案 0 :(得分:2)
您没有使用 rowx
和colx
个变量。你总是传递0:
if sh.cell_value(rowx=0, colx=0) == cellValue:
传递变量的值:
if sh.cell_value(rowx=rowx, colx=colx) == cellValue:
当你在这里时,你可以做一些其他的简化。 rowx
和colx
始终与count
相同,因此您只需使用一个变量。我们可以使用0
循环从totalCells-1
循环到for
,并使用break
语句提前结束循环:
for i in xrange(totalCells):
print "AAAA"
cellValue = "Long string in here....."
if sh.cell_value(rowx=i, colx=i) == cellValue:
print "BBBB"
break
如果rowx
和colx
并非总是相同,那么你需要解决这个问题,因为否则你只会沿着主对角线前进。