简体   繁体   中英

How to pass a variable as a command line argument in iPython?

For example, I have a Python module and a iPython module,

cmd.py

import sys
print sys.argv

test.ipynb

for i in range(5):
   %run cmd.py i

When I run test.ipynb, it just print ['cmd.py', 'i'] multiple times. How can I pass the value of i instead of 'i' as a command line argument?

the shell mode interprets everything literally (else cmd.py would be evaluated as well). I would just do:

for i in range(5):
   %run cmd.py $i

from http://ipython.readthedocs.io/en/stable/interactive/reference.html

IPython also allows you to expand the value of python variables when making system calls. Wrap variables or expressions in {braces}:

For simple cases, you can alternatively prepend $ to a variable name

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM