代码之家  ›  专栏  ›  技术社区  ›  Stefan van den Akker Raymond Hettinger

Python字符串格式:使用另一个关键字的索引获取字典中的值

  •  4
  • Stefan van den Akker Raymond Hettinger  · 技术社区  · 10 年前

    我正在探索我能做什么,不能做什么 format() 方法

    假设我正在尝试格式化字符串 "5/11/2013" 喜欢 "11 May 2013" .

    这是我尝试过的:

    string = "5/11/2013"
    dictionary = {"5": "May"}
    
    print "{part[1]} {month[{part[0]}]} {part[2]}".format(
        part=string.split('/'), month=dictionary)
    

    返回:

    KeyError: '{part[0'
    

    我做错了什么?甚至有可能嵌套像这样的参数吗 {month[{part[0]}]} ?

    2 回复  |  直到 10 年前
        1
  •  2
  •   behzad.nouri    10 年前

    可能分为两个步骤:

    >>> dictionary = {5: "May"}
    >>> "{part[1]} {{month[{part[0]}]}} {part[2]}".format(part=string.split('/')).format(month=dictionary)
    '11 May 2013'
    
        2
  •  0
  •   sshashank124    10 年前

    为什么不尝试如下:

    string = "5/11/2013".split('/')
    dictionary = {"5": "May"}
    
    print "{} {} {}".format(string[1],dictionary[string[0]],string[2])
    

    这也比你在那里做什么更容易理解。