我得到了#UnboundLocalError:本地变量' fileName'在转让前引用'在if / elif语句下使用变量时。
代码采用文件名并使用正则表达式将垃圾分开开始和结束。然后它返回新的文件名和foldername。:
@Html.TextBoxFor(m => m.DateOfBirth, new { style = "visibility: hidden; width: 0; height: 0;" })
<input type="text" id="DateOfBirthDisplay" readonly="readonly" />
<script>
$(function() {
$("#DateOfBirthDisplay").datepicker({
dateFormat: "d M yy", //The format that you want for the display
altFormat: "yy-mm-dd", //The format accepted by your controller
altField: "#@Html.IdFor(m => m.DateOfBirth)"
}).datepicker("setDate", "new Date(" + Model.DateOfBirth.ToString("yyyy, M-1, d") + ")");
});
</script>
麻烦的代码:
input:
'[subcompany] series title - 01 [more junk].mkv'
desired output:
('series title - 01.mkv', 'series title')
答案 0 :(得分:1)
基本上,由于您没有else
子句,如果if
或elif
条件都未评估为True
,则fileName
未定义。也许尝试在f
子句中返回else
,以便函数退出:
if f.endswith('mkv') and f.startswith('[H'):
fileName = fileReg.findall(f)
elif f.endswith('mkv') and f.startswith('['):
fileName=altReg.findall(f)
else:
return f
答案 1 :(得分:0)
显然if和elif语句没有运行,所以fileName还没有分配,所以错误只是说 - &#34;这不是变量&#34;