在具有索引Python数的Excel工作表中搜索特定字符串

Posted

技术标签:

【中文标题】在具有索引Python数的Excel工作表中搜索特定字符串【英文标题】:Search for a specific string in excel sheet with number of index Python 【发布时间】:2019-04-02 00:28:24 【问题描述】:

在这里,我想在包含多个字符串的 Excel 工作表中搜索,其中 Excel 工作表包含多个索引。如果 excel 文件的任何一个索引包含这些字符串,那么它必须打印为 true。

for i in sheet_data:
if search_string= "string1" or "string2" or "string3" etc.

   print true
else:
   print false

我已经浏览过this answer,但它会在字符串中搜索特定单元格,但在我的情况下,字符串单元格无法预测,如果任何字符串包含在任何索引的任何单元格中,那么它必须打印为真。

import xlrd
sheet_data = []   
wb = xlrd.open_workbook(Path_to_xlsx)
p = wb.sheet_names()
for y in p:
   sh = wb.sheet_by_name(y)
   for rownum in xrange(sh.nrows):
      sheet_data.append((sh.row_values(rownum)))

found_list = []
rows_to_be_saved = []
for i in sheet_data:
  if i[2] == "string1" or i[2] == "string2" or i[2] == "string3" or i[2] == "string4" or i[2] == "string5":
    found_list.append(i)
  else:
      rows_to_be_saved.append(i)

text_file = open("Output.txt", "w")
text_file.write(found_list)
text_file.close()

【问题讨论】:

请阅读minimal reproducible example 指南。发布真实代码、示例输入、预期与实际输出,包括回溯(如果有)。 【参考方案1】:

你有一个数据列表,你想在其中搜索一些字符串,所以我可以向你建议以下内容。

strings = ("string", "string2", "string3")
for line in list:
    if any(s in line for s in strings):
        print("String Found")

【讨论】:

以上是关于在具有索引Python数的Excel工作表中搜索特定字符串的主要内容,如果未能解决你的问题,请参考以下文章

在 mysql 的表中搜索特定行值的列名

spring-data-elasticsearch 在多个索引中搜索特定字段

在单元格中搜索特定字符串并在excel vba中返回的函数

在数组中搜索特定范围内的整数

在所有表中的所有字段中搜索特定值 (Oracle)

在所有表中的所有字段中搜索特定值 (Oracle)