此问题在此处已有答案:
python using variables from another file(2个答案)
3天前关闭。
当我运行程序时,我的导入不起作用,我尝试了不同的方法,但我得到相同的错误:
“名称错误:未定义名称'SINGLE 1'”
这是我正在运行的程序:
name="What is the name of the player?:"
NAME1=input(name)
atbats=("Number of At-Bats for ")+(NAME1)+"?:"
ATBATS1=(int(input(atbats)))
single=("Number of Singles for ")+(NAME1)+("?:")
SINGLE1=(int(input(single)))
double=("Number of Doubles for ")+(NAME1)+("?:")
DOUBLE1=(int(input(double)))
triple=("Number of Triples for ")+(NAME1)+("?:")
TRIPLE1=(int(input(triple)))
home=("Number of Homeruns for ")+(NAME1)+("?:")
HOME1=(int(input(home)))
from BBFUN import *
print("Batting Average for ",(NAME1),(":"))
batting_average()
print("Slugging Percentage for ")+(NAME1)+(":")
slugging_percent()
我正在尝试导入的另一个程序是这样的:
def batting_average():
avg=(SINGLE1)+(DOUBLE1)+(TRIPLE1)+(HOME1)
bat_avg=format(((avg)/ (ATBATS1)),'.2f')
return((bat_avg))
def slugging_percent():
sing=(SINGLE1)*1
doub=(DOUBLE1)*2
trip=(TRIPLE1)*3
homerun=(HOME1)*4
slug_total=(sing)+(doub)+(trip)+(homerun)
slug_avg=format(((slug_total)/ (ATBATS1)),'.2f')
return(slug_avg)
当我最初在第一个程序中有它的时候,它工作得很好。谢谢你,我很感激任何帮助!
2条答案
按热度按时间wj8zmpe11#
你需要在你的函数中定义参数,这样它们就可以接收你在第一个文件中定义的参数:
在BBFUN:
你跑(我不知道任何关于棒球所以...):
--希望这能有所帮助
du7egjpx2#
SINGLE1未在函数内部定义。
我只能猜测,但似乎你没有创建所需的Global variables。
您可以将SINGLE1变量(和其他变量)传递到函数中,而不是创建全局变量。