我想编写一个函数decode(chmod),它将一个三位数的权限号作为字符串,并返回它授予的权限。 除非我要求第0个元素,否则它似乎有效。我无法弄清楚为什么会这样。
def decode(chmod):
liste = [int(i)for i in str(chmod)]
chmod = ["None", "Execute only", "Write only",
"Write and Execute", "Read only",
"Read and Execute", "Read and Write",
"Read Write and Execute"]
for i in liste:
print chmod[i]
return liste
print decode(043)
答案 0 :(得分:1)
你需要大约043的报价。试试'043'。
答案 1 :(得分:1)
(假设你要传递一个整数)
043是基数8与基数10中的35相同。因此,您将整数35传递给解码函数。
尝试更改str
- > oct
liste = [int(i) for i in oct(chmod)[2:]] #Use [2:] in Py3, and [1:] in Py2