Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python dict对象不可调用,_Python_Python 3.x - Fatal编程技术网

Python dict对象不可调用,

Python dict对象不可调用,,python,python-3.x,Python,Python 3.x,我正在编写一个python“脚本”,它可以从八进制转换为二进制,现在我遇到了以下问题: “dict”对象不可调用 这是我的剧本: OctalBinary1 = { "0" : "000", "1" : "001", "2" : "010", "3" : "011", "4" : "100", "5" : "101", "6" : "110",

我正在编写一个python“脚本”,它可以从八进制转换为二进制,现在我遇到了以下问题:

“dict”对象不可调用

这是我的剧本:

    OctalBinary1 = {
          "0" : "000",
          "1" : "001",
          "2" : "010",
          "3" : "011",
          "4" : "100",
          "5" : "101",
          "6" : "110",
          "7" : "111"
}

def toBinaryOctal(x):
          counter = 0
          sum_var = ""
          fin_var = ""
          if len(x) % 3 == 0:
                  for i in x:
                            counter += 1
                            sum_var += str(i)
                            if counter == 1:
                               for x , y in OctalBinary1():
                                        if x == sum_var:
                                                  print ("ok")
                                                  fin_var += OctalBinary1[x]
toBinaryOctal("123")

迭代dict的键和值的正确方法是:

for x, y in OctalBinary1.items():
    if x == sum_var:
        print ("ok")
        fin_var += OctalBinary1[x]

迭代dict的键和值的正确方法是:

for x, y in OctalBinary1.items():
    if x == sum_var:
        print ("ok")
        fin_var += OctalBinary1[x]

你应该在第二个
循环中写
OctalBinary1.items()?字典不是一个可以作为函数调用的对象。Python已经具备了进行转换的功能,如果您想对格式有更多的控制,可以尝试
bin(int(“123”,8))
“{:b}”.format(int(“123”,8))
。你可以找到格式字符串语法规范。我知道,但作为学校作业,我必须自己做,谢谢:你应该在第二个
循环中为
OctalBinary1.items()
,顺便说一句,圣诞树不错。错误信息很容易解释,不是吗?字典不是一个可以作为函数调用的对象。Python已经具备了进行转换的功能,如果您想对格式有更多的控制,可以尝试
bin(int(“123”,8))
“{:b}”.format(int(“123”,8))
。你可以找到格式字符串语法规范。我知道,但作为学校作业,我必须自己做,谢谢:D