Соответствие строк в Python и команде IF - PullRequest
0 голосов
/ 25 мая 2019

У меня есть список разных имен.Я хочу взять одно имя за раз и сопоставить его со значениями в определенном столбце во фрейме данных.Если условия соблюдены, будет выполнен следующий расчет:

orderno == orderno + 1

Однако, к сожалению, код, похоже, не работает.Что-нибудь, что я могу сделать, чтобы убедиться, что это работает?

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

Ответы [ 2 ]

0 голосов
/ 25 мая 2019

Попробуйте сначала удалить кавычки вокруг "DfCustomers ['EntityName']", чтобы не просто сравнивать непосредственно с этой строкой.Затем в вашей логике переменная orderno должна быть увеличена на 1, а не на ее значение +1. Новый код может выглядеть примерно так:

DfCustomers['orderno'] = 0
for i in uniquecustomer:
  if i == DfCustomers['EntityName']:
        orderno = orderno + 1
0 голосов
/ 25 мая 2019

Удалить кавычки ("").Написав

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

, вы сравниваете переменную i с фактической строкой "DfCustomers ['EntityName']" вместо переменной DfCustomers ['EntityName'].Попробуйте удалить кавычки и распечатайте переменную, чтобы почувствовать ее, например,

print("DfCustomers['EntityName']")

против

print(DfCustomers['EntityName'])
...