我是Python的新手,尤其是与Excel结合使用时。我需要编写代码以在较长的字符串中为A列中的每个单元格搜索字符串“ Mac”,“ Asus”,“ AlienWare”,“ Sony”或“ Gigabit”。具体取决于在其中找到哪些字符串在A列的单元格中的整个条目中,应将这5个字符串之一写入C列的单元格中的相应行。否则,如果找不到这五个中的任何一个,它将在列C的对应行中写入“其他”。例如,如果列A2的单元格包含字符串“ ProLiant Asus DL980 G7”,则正确的代码将写为“ Asus”到列C2的单元格。它应该对A列中的每个单个单元格执行此操作,并将适当的字符串写入C列中的相应单元格。A列中的每个单元格中都将包含Mac,Asus,AlienWare,Sony或Gigabit这五个字符串之一。如果其中不包含这些字符串之一,则我希望在第3列的相应单元格中写入字符串“ Other”。到目前为止,这是我所拥有的代码(一点也不多):

import openpyxl
wb = openpyxl.load_workbook(path)
sheet = wb.active
    for i in range (sheet.max_row):
    cell1 = sheet.cell (row = i, column = 1)
    cell2 = sheet.cell (row = I, column = 3)

# missing code here

wb.save(path)

最佳答案

您尚未尝试编写任何代码来解决问题。您可能想要首先获取openpyxl写入excel工作簿并验证其是否有效-即使它是虚拟数据。该页面看起来很有帮助-here

一旦工作了,您需要的是一个简单的函数,该函数将字符串作为参数。

def get_column_c_value(string_from_column_a):
     if "Lenovo" in string_from_column_a:
          return "Lenovo"
     else if "HP" in string_from_column_a:
          return "HP"
     # strings you need to check for here in the same format as above
     else return "other"


尝试一下,如果有任何问题,请告诉我您遇到了什么问题。

关于python - 用python处理Excel电子表格,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50806165/

10-09 19:29
查看更多