Python/Jupyter

From Wiki

Magic Functions

Timing

  • %timeit (time line)
  • %%timeit (time block in lines below, same line = not timed setup)

importing other jupyter notebook

  • run.ipynb:
% run 'lib_testprog.ipynb'
testfunct()
  • lib_testprog.ipynb:
def testfunct()
    return 1

if __name__ == '__main__' and '__file__' not in globals():
    print(testfunct())

sharing variables between notebooks

  • test1.ipynb:
variable = 'testdata'
%store variable
  • test2.ipynb:
%store -r variable
print(variable)
  • hints:
    • use "global" in functions

Autorun notebooks on startup

simple, but no start/stop control later

  • /home/user/.ipython/profile_default/startup/startup.ipy
#!/usr/bin/ipython

%run /srv/python/script_a.ipynb

complex, with full control

  • /home/user/.ipython/profile_default/startup/startup.ipy
#!/usr/bin/ipython

%run /srv/python/startup.ipynb
  • /srv/python/startup.ipynb
from selenium import webdriver  
from selenium.webdriver.common.by import By

urls = ["http://192.168.111.11:8888/notebooks/projects/test.ipynb"]

def start_notebook(url):
    browser = webdriver.PhantomJS(service_args=['--ssl-protocol=any'])  
    browser.set_window_size(1280, 1400)
    browser.implicitly_wait(10)  
    browser.get(url) 
    
    browser.find_element(By.LINK_TEXT, 'Cell').click()
    browser.find_element(By.LINK_TEXT, 'Run All').click()
    browser.quit()

for url in urls:
    print ("starting: " + url)
    start_notebook(url)


Links