在Python中格式化多行dict的方法是什么?

问题:

在Python中,我想在我的代码中写一个多行的dict。有几种方式可以格式化它。这里有几个我可以想到的:

  1.   mydict = {“key1”:1,
               “key2”:2,
               “key3”:3,}
     
  2.   mydict = {“key1”:1,
               “key2”:2,
               “key3”:3,
             }
     
  3.   mydict = {
        “key1”:1,
        “key2”:2,
        “key3”:3,
    }
     
我知道上面的任何一个都是语法上正确的,但是我假设有一个Python脚本的首选缩进和换行符。它是什么? 注意:这不是一个语法问题。以上所有都是(据我所知)有效的Python语句,并且彼此相当。

回答:

我使用#3。长列表,元组等都是相同的。它不需要在缩进之外添加任何额外的空格。一如既往,一致。
mydict = {
    "key1": 1,
    "key2": 2,
    "key3": 3,
}

mylist = [
    (1, 'hello'),
    (2, 'world'),
]

nested = {
    a: [
        (1, 'a'),
        (2, 'b'),
    ],
    b: [
        (3, 'c'),
        (4, 'd'),
    ],
}

同样,这是我首选的包含大型字符串而不引入任何空格的方式(就像你使用三重引号的多行字符串一样):

data = (
    "iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABG"
    "l0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAEN"
    "xBRpFYmctaKCfwrBSCrRLuL3iEW6+EEUG8XvIVjYWNgJdhFjIX"
    "rz6pKtPB5e5rmq7tmxk+hqO34e1or0yXTGrj9sXGs1Ib73efh1"
    "AAAABJRU5ErkJggg=="
)

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: What is the proper way to format a multi-line dict in Python?

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

+ 42 = 44