Как передать переменные python в сценарий оболочки в записных книжках лазурных блоков данных? - PullRequest
0 голосов
/ 13 февраля 2019

Как передать переменные python из% python cmd в сценарий оболочки% sh, в записную книжку лазурных баз данных ..?

notebook example

1 Ответ

0 голосов
/ 13 февраля 2019

По моему опыту, есть два обходных пути для передачи переменной Python в скрипт Bash для вашего текущего сценария.

Вот мои примеры кодов, использующих Python3 в блокноте.

  1. Для передачи небольших данных через переменную среды в том же сеансе оболочки Azure Databricks Notebook, как показано ниже.

    %python
    import os
    l = ['A', 'B', 'C', 'D']
    os.environ['LIST'] = ' '.join(l)
    print(os.getenv('LIST'))
    
    %%bash
    for i in $LIST
    do
      echo $i
    done
    

Работает, как показано на рисунке ниже.

enter image description here

Передача больших данных через файл по текущему пути Блокнота данных Azure, как показано ниже.

%python
with open('varL.txt', 'w') as f:
  for elem in l:
    f.write(elem+'\n')
  f.close()  

%%bash
pwd
ls -lh varL.txt
echo '=======show content=========='
cat varL.txt
echo '=====result of script========'
for i in $(cat varL.txt)
do
  echo $i
done

Работает, как показано на рисунке ниже.

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...