此代码无误地运行。但是在函数find_available_filenumber
中,变量render_folder
未被声明。所以我的问题是为什么这不会产生错误?为什么我的一个变量不需要声明而另一个呢?
如果我删除full_filename
作为参数,我得到的错误:
UnboundLocalError: local variable 'full_filename' referenced before assignment.
我不明白为什么这不也与render_folder
发生,下面我的代码示例:
import bpy
import os
#Functions
def find_available_filenumber(full_filename):
file_number = 1
while os.path.exists(render_folder + "\\" + full_filename):
file_number += 1
full_filename = create_full_filename(filename, file_number)
return file_number
def create_full_filename(filename, file_number):
file_extension = ".avi"
full_filename = filename + "_" + str(file_number) + file_extension
return full_filename
#Paths and names
project_folder = "F:\\06_MotionPath_Dev\\"
os.chdir(project_folder)
render_folder = "Render\\QuickRenderAddon"
filename = bpy.context.scene.name #Returns "QuickRenderAddon"
full_filename = create_full_filename(filename, 1)
filepath = render_folder + "\\" + full_filename
available_number = find_available_filenumber(full_filename)
print("Avail nmb: " + str(available_number))