fl = os.listdir("./MDK-ARM")
for i in fl:
fname,fext = os.path.splitext(i)
if fext == ".uvprojx":
fprj = i
print("找到",fprj,"文件...")
if fext == ".s":
fasm = i
print("找到",fasm,"文件...")
fasm = "./MDK-ARM/"+fasm
fasm没有初值呀
循环之前,你应该先执行fasm=''或者fasm=str()
因为 fasm = i是写在if里面的,万一if没有进,你后面相当于fasm没有定义
虽然python里没有块的概念,你在for里定义的变量出了for一样能用
但是在一开始将需要用到的变量先初始化好是个良好的编程习惯,不容易出奇怪的bug
就是提示你这样写可能会引发错误。
当你两个if条件都没满足或者没有进行for循环,你的fasm变量是没有定义的。
这种情况下。你直接拿来进行拼接就会产生错误
你需要在代码的最前面给fasm赋予初始值
fasm="default"
fl = os.listdir("./MDK-ARM")
for i in fl:
fname,fext = os.path.splitext(i)
if fext == ".uvprojx":
fprj = i
print("找到",fprj,"文件...")
if fext == ".s":
fasm = i
print("找到",fasm,"文件...")
fasm = "./MDK-ARM/"+fasm