我想在Python中使用一个函数。我想将“钻取”传递给我定义的dataupdate函数的参数,但是它不起作用。我需要做什么?底部的代码是我想要的。 谢谢。
def dataupdate(plant):
int('fr_'+plant) = open('plant.txt', 'r')
to_plant2 = fr_plant.read()
if to_plant != to_plant2:
print(to_plant2)
fr_plant.close()
int_out_plant2 = int(to_plant2, 2)
OUT_plant2 = 255 - int_out_plant2
print(OUT_plant2)
Out_plant.set_value(OUT_plant2)
to_plant = to_plant2
dataupdate('Drill')
fr_Drill = open('Drill.txt', 'r')
to_Drill2 = fr_Drill.read()
if to_Drill !=to_Drill2:
print(to_Drill2)
fr_Drill.close()
int_out_Drill2 = int(to_Drill2, 2)
OUT_Drill2 = 255-int_out_Drill2
print(OUT_Drill2)
Out_Drill.set_value(OUT_Drill2)
to_Drill=to_Drill2
答案 0 :(得分:0)
据我所知,您正确地传递了参数,但是您的函数将无法使用它。问题出在
int('fr_'+plant) = open('plant.txt', 'r')
使用open('plant.txt', 'r')
时,您不会打开带有保存在plant中的变量名称的文本文件,而是可能不存在的实际文件“ plant.txt”,该语句本身也不存在有效。您可以尝试类似
open(str(plant) + '.txt', 'r')
相反。这将打开带有保存在plant中的变量名的文本文件,而不是'plant.txt'。
随时问任何可能出现的问题。
PS:请对变量进行命名,保持一种样式(例如,仅使用大写字母或仅使用小写,而不使用部分大写字母,例如OUT_Drill2),并尝试避免对变量进行枚举(例如,再次使用OUT_Drill2)。这将大大有助于提高可读性,这是python的关键思想。
PPS:如注释中所述,您的代码中还存在其他错误。