从jupyter笔记本运行python程序,同时传递文件名作为参数

时间:2018-09-16 21:29:40

标签: python jupyter-notebook

我试图从jupyter笔记本中运行名为“ Volatility_Spreadsheet_Prepare.py”的程序,同时将多个文件作为参数传递给该程序。我的代码如下:

for filename in all_csv_files:
    %run 'Volatility_Spreadsheet_Prepare.py' filename

此处,all_csv_files包含当前目录中所有CSV文件的列表。该程序将文件名作为参数。

在这里,Jupyter Notebook将文件名视为字符串,而我希望它考虑存储在for循环的变量“文件名”中的名称。我该怎么做?

2 个答案:

答案 0 :(得分:2)

Jupyter Notebook用bash样式的$ name扩展变量。

尝试类似这样的操作(注意文件名前面的“ $”):

router.get('/', function (req, res, next) {
  Promise.all([
    Product.find().limit(4).populate({path: 'region_id', model: Region}),
    Type.find()
  ])
    .then(([product, type]) => {
      res.render('index', {title: 'Home', items: { product, type } });
    });
    .catch((err) => {
      // handle errors
    });
});

有关更多信息,请参见here

答案 1 :(得分:1)

输入此

!python Volatility_Spreadsheet_Prepare.py all_csv_files