如何在一个txt中找到与之匹配的Excel中每个单元格相同长度的字符串的位置,输出字符串在txt中的行数
时间: 2024-02-11 12:08:19 浏览: 110
以下是一个简单的实现,需要使用xlrd库和Python 3.x版本:
```python
import xlrd
# 打开Excel文件
workbook = xlrd.open_workbook('example.xlsx')
# 获取第一个工作表
worksheet = workbook.sheet_by_index(0)
# 打开txt文档
with open('example.txt', 'r') as f:
text = f.read()
# 遍历每一个单元格
for row in range(worksheet.nrows):
for col in range(worksheet.ncols):
# 获取单元格内容和长度
cell_value = worksheet.cell_value(row, col)
cell_length = len(cell_value)
# 在txt文档中查找与单元格内容匹配的字符串
index = text.find(cell_value)
while index != -1:
# 根据单元格长度判断匹配到的字符串是否为完全匹配
if len(text[index:index+cell_length]) == cell_length:
line_number = text.count('\n', 0, index) + 1
print(f'单元格({row+1}, {col+1})中的字符串在txt文档中的行数为:{line_number}')
# 继续查找下一个匹配位置
index = text.find(cell_value, index+1)
```
以上程序会遍历Excel中的每个单元格,在txt文档中查找与单元格内容匹配的字符串。由于txt文档中可能有多个与单元格内容匹配的字符串,程序会找到所有匹配位置,并根据单元格长度判断匹配到的字符串是否为完全匹配。如果是完全匹配,则输出字符串在txt文档中的行数。
阅读全文