У нас была информация о наших клиентах, распространяемая по 4 устаревшим системам и впоследствии перенесла все данные в 1 новую систему.Преобразование текстового файла в список
Наши клиенты ранее имели разные номера счетов в каждой системе, и мне нужно проверить, какой номер учетной записи был использован в новой системе, которая поддерживает вызовы API.
У меня есть текстовый файл, содержащий все возможные номера счетов, структурированных так:
30000001, 30000002, 30000003, 30000004
30010000, 30110000, 30120000, 30130000
34000000, 33000000, 32000000, 31000000
Где каждая строка представляет все старые номера счетов для каждого клиента.
Я не уверен, если это лучший подход, но я хочу, чтобы открыть текстовый файл и создать вложенный список:
[['30000001', '30000002', '30000003', '30000004'], ['30010000', '30110000', '30120000', '30130000'], ['34000000', '33000000', '32000000', '31000000']]
Тогда я хочу перебрать каждый список, но экономить на звонках API , как только я проверил номер новой учетной записи в определенном списке, я хочу вырваться и перейти к следующему списку.
import json
from urllib2 import urlopen
def read_file():
lines = [line.rstrip('\n') for line in open('customers.txt', 'r')]
return lines
def verify_account(*customers):
verified_accounts = []
for accounts in customers:
for account in accounts:
url = api_url + account
response = json.load(urlopen(url))
if response['account_status'] == 1:
verified_accounts.append(account)
break
return verified_accounts
Основной вопрос, когда я прочитал из файла она возвращает данные как ниже, так что я не могу пройти по отдельным счетам.
['30000001, 30000002, 30000003, 30000004', '30010000, 30110000, 30120000, 30130000', '34000000, 33000000, 32000000, 31000000']
Кроме того, есть более Pythonic способ использования списковых или похож на итерацию и проверить номера счетов. Кажется, слишком много вложенности используется для Python?
Последний вопрос, который стоит упомянуть, заключается в том, что для проверки есть более 255 клиентов, и почти 1000. Смогу ли я передать более 255 параметров в функцию?
использование CSV парсер. – hjpotter92
Жаль, что люди, которые создали ваш новый API, не смогли дать вам список новых номеров учетных записей ... FWIW, как только вы собрали новые номера учетных записей, вам может понравиться создать «dict» со старым номера счетов в качестве ключей и номер нового счета в качестве значения. Вы можете сохранить этот dict как JSON или файл рассола. –
@ PM2Ring Или используйте базу данных вместо этого :) –