【发布时间】:2014-11-23 19:09:09
【问题描述】:
此代码运行没有错误。但是在函数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))
【问题讨论】:
标签: python function variables python-3.x scope