PyCharm: как правильно процитировать аргументы для отладки? - PullRequest
1 голос
/ 09 апреля 2019

Мне нужно передать короткий фрагмент JSON в качестве аргумента для моей программы:

python3 myscript.py --json '{"TP":"COR10","PR":55,"TM":607781280,"RP":[{"AMM":21.31,"IVA":22.00,"IMP":4.69}]}'

Кажется, это работает из командной строки, но если дословно вставить в Edit Configurations -> Parameters кавычкисохранено:

b"'{TP:COR10,PR:55,TM:607781280,RP:[{AMM:21.31,IVA:22.00,IMP:4.69}]}'"

Я могу понять, что он сохранил самые простые одинарные кавычки, потому что нет shell для анализа аргументов, но почему он удалил двойные кавычки?

Для того, чтобы получить желаемый результатМне нужно пропустить окружающие одинарные кавычки и , заключенные в кавычки каждый "странный" символ (включая пробел, которого нет в примере), как в:

--json {\"TP\":\"COR10\",\"PR\":55,\"TM\":607781280,\"RP\":[{\"AMM\":21.31,\"IVA\":22.00,\"IMP\":4.69}]}

Это выглядит неловкомягко говоря.Есть какой-то ярлык, о котором я не знаю?

1 Ответ

0 голосов
/ 09 апреля 2019

Вы пробовали с кем-то вроде второго примера, но использовали кавычки сигла?

- json {'TP': 'COR10', 'PR': 55, 'TM': 607781280, 'RP': [{'AMM': 21,31, 'IVA': 22,00, 'IMP': 4,69 }]}

Это же форма парсера

...