Python和IF命令中的字符串匹配

时间:2019-05-25 18:50:37

标签: python string if-statement matching

我有一个不同名称的列表。我想一次取一个名字,并将其与数据框中特定列中的值匹配。如果满足条件,将执行以下计算:

orderno == orderno + 1

但是,不幸的是,该代码似乎不起作用。我有什么办法确保它能正常工作?

DfCustomers['orderno'] = 0
for i in uniquecustomer:
  if i == "DfCustomers['EntityName']":
        orderno == orderno + 1

2 个答案:

答案 0 :(得分:0)

删除引号(“”)。通过写

if i == "DfCustomers['EntityName']":

您将变量i与实际字符串“ DfCustomers ['EntityName']”而不是变量DfCustomers ['EntityName']进行比较。尝试删除引号并打印出变量以了解它,例如

print("DfCustomers['EntityName']")

vs

print(DfCustomers['EntityName'])

答案 1 :(得分:0)

尝试首先删除“ DfCustomers ['EntityName']”周围的引号,以便不仅直接与该字符串进行比较。然后,在您的逻辑内,orderno变量应增加1,而不是与其值+ 1进行比较。新代码可能如下所示:

DfCustomers['orderno'] = 0
for i in uniquecustomer:
  if i == DfCustomers['EntityName']:
        orderno = orderno + 1