文件结构:
def mainStuff():
for a in aa:
aName = aa[a].split('')[-1].split('-')[5]
# Do other important stuff so I can't return early
def replaceOne():
if aName.split('_')[1] == "android":
aName = aName.replace('_android','Android')
return aName
def replaceTwo():
if aName.split('_')[4:7] == "abc":
aName = aName.replace('abc','Tom')
return aName
我希望两个if语句块连续运行,所以我决定将它们放在单独的函数中。但是,由于在循环运行时生成了aName
,所以我的函数无法获取该变量。我无法使用return
,因为该功能必须运行到完成才能使输出正常工作。
我尝试使用yield
,但是该函数过早结束。
如何获取aName
并将其传递给其他功能?
答案 0 :(得分:1)
您需要将Dim indexTags As Dictionary(Of String, DataRow) = BuildIndex(_DBASE_ConnectionDataSet.tblLIST, 0)
传递给函数一个参数。请参阅this tutorial中的参数部分。对于您的情况,请尝试按以下方式调整代码:
aName