我正在尝试列出下游目录,并按照使用os.walk命令后迭代的顺序为它们分配值。问题是我得到了一堆空的" {}"符合预期结果的值。
@Html.DropDownListFor(m => m.PaymentInfo.CreditDetails.ExpirationMonth, Helpers.PossibleMonths, ...)
我得到以下结果:
import os
path = "PATH\\TO\\DIRECTORY\\"
os.chdir(path)
for root, dirs, files in os.walk(path):
ij = 1
dir_output = {}
for dir in dirs:
dir_output[ij] = dir
ij += 1
print dir_output
我正试图摆脱那些空洞的" {}"但它似乎是os.walk输出特有的东西。试过.pop和.strip,但刚收到错误。
答案 0 :(得分:0)
通过在for循环之外移动dir_output
和import os
path = "PATH\\TO\\DIRECTORY\\"
os.chdir(path)
dir_output = {}
ij = 1
for root, dirs, files in os.walk(path):
for dir_ in dirs:
dir_output[ij] = dir_
ij += 1
print dir_output
的初始化,您可以跳过其他空字典:
var btndelivery = $j('.delivery').parent("li");
var grandtotaltxt = $j(".gtman").text().replace("$", "");
var grandtotal = parseInt(grandtotaltxt);
alert(grandtotal);
$j(document).ready(function() {
if ($j(grandtotal) > 60) {
alert("plus grand");
$j(btndelivery).show();
} else {
alert("plus petit");
$j(btndelivery).hide();
}
})
答案 1 :(得分:0)
我试过了。它没有按计划工作。
以下是我如何解决它:
而不是使用os.walk我做了:
for dir in os.listdir('.'):
这样,它只会遍历dirs。 我不想要枚举,因为我将字典值映射到菜单上的选项。现在,最后要做的是将这些值映射为三行而不是每行一次。