如何使用'for'循环将新变量传递给python脚本

时间:2016-07-25 21:28:14

标签: python variables for-loop main

我正在尝试编写一个python脚本,它将遍历一个列表,然后将一个新变量传递给另一个python脚本。这是我的代码:

脚本:ENCViewer.py

 # import necessary modules
 import os

 # list of all ENCS
 root = os.listdir('/home/cassandra/desktop/file_formats/ENC_ROOT')
 root.sort()
 root = root[2:]

 for ENC in root:
      # pass new instance of variable 'ENC' to ENCReader.py
     import ENCReader.py

脚本:ENCReader.py

from __main__ import *
print ENC
.... # remaining script

目前,在执行第一个代码ENCViewer.py时,它只会执行一次然后退出。如何将“ENC”的新实例变量传递给ENCReader.py,以便它在第一段代码中看到的整个“for”循环中执行?

感谢。

1 个答案:

答案 0 :(得分:2)

我不知道你问的是否可能,但我认为你错过了解创建模块和导入代码的想法。 "标准"实现相同结果的方法如下:

ENCReader.py

def printer(var):
    print(var)
    # your code..

ENCViewer.py

 import os
 from ENCReader import printer

 # list of all ENCS
 root = os.listdir('/home/cassandra/desktop/file_formats/ENC_ROOT')
 root.sort()
 root = root[2:]

for ENC in root:
    printer(ENC)