首页 > 解决方案 > 将单个文件中的 2 个参数传递给函数参数

问题描述

我有一个功能:

def process(fa : {str:{str:str}}, state : str, inputs : [str]) -> [None]:

并且参数的 ( state : str, inputs : [str]) 参数将来自文件 (input_file.txt) 的内容:

even;1;0;1;1;0;1
even;1;0;1;1;0;x
odd;1;0;1;1;0;1

作为state第一个元素(偶数/奇数)并inputs作为其余元素的列表(1,0,x)

是否可以将文件中的内容作为参数传递给函数?

我已经尝试过理解,但返回值与我想要获得的值相差无几,我不知道在玩了一会儿之后还能尝试什么:

proccess( fa, (item[0] for line in input_file for item in line.split(';')), (item[1:] for line in input_file for item in line.split(';') )

标签: pythonfunctionfile

解决方案


这样的事情应该这样做:

for line in open('input_file.txt','rt'):
    state,*inputs = line.strip().split(';')
    process(fa,state,inputs)

推荐阅读