Передать параметр в Python скрипт внутри sh - PullRequest
0 голосов
/ 21 марта 2020

Мне нужно передать параметр в python функцию внутри файла sh.

Мой массив такой:

$ echo $myarr 
0, 17, 25, 28, 11, 19, 15, 2, 2, 2, 23, 27, 27, 8, 24, 15, 7, 13, 18, 27, 1, 23, 30, 21, 26, 19, 17, 27, 31, 25, 19, 6, 13

И функция python похожа на его вывод

$ python -c 'import bech32; print bech32.bech32_create_checksum("tb", ['$myarr'] )'
  File "<string>", line 1
    import bech32; print bech32.bech32_create_checksum("tb", [0,
                                                               ^
SyntaxError: unexpected EOF while parsing

Если я использую массив (без переменной), он работает

$ python -c 'import bech32; print bech32.bech32_create_checksum("tb", [0, 17, 25, 28, 11, 19, 15, 2, 2, 2, 23, 27, 27, 8, 24, 15, 7, 13, 18, 27, 1, 23, 30, 21, 26, 19, 17, 27, 31, 25, 19, 6, 13] )'
[10, 9, 20, 29, 27, 15]

Здесь Вы можете увидеть python функцию

1 Ответ

0 голосов
/ 21 марта 2020

Использовать одинарную кавычку с python cmd неверно, так как оно разрывает строку. Отсюда и первая ошибка. Помимо этого, для передачи параметра в python cmd вы можете сделать это:

python3 -c 'import sys; print(sys.argv[1])' "Now it should work"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...