【问题标题】:Interpolate variables into string in python and coffeescript在python和coffeescript中将变量插入字符串
【发布时间】:2015-08-02 19:57:06
【问题描述】:

在python中:

namespace = { 'host': 'facebook.com', 'user': '{somehost}/user/83426347' }
namespace['user'].format(somehost=namespace['host'])

facebook.com/user/83426347

在咖啡脚本中我有相同的:

namespace=
    host: 'facebook.com'
    user: 'facebook.com/user/42342342'

我是 CS 新手,如何处理与 python 相同的行为?

【问题讨论】:

    标签: python string dictionary coffeescript namespaces


    【解决方案1】:

    Python

    language = "Python"
    greet = "I love %s" % language
    

    咖啡脚本

    language = "Coffescript"
    greet = "I love #{language}"
    

    【讨论】:

      【解决方案2】:

      older answer所见

      String.prototype.format = ->
        args = arguments
        return this.replace /{(\d+)}/g, (match, number) ->
          return if typeof args[number] isnt 'undefined' then args[number] else match
      

      然后你可以这样做:

      namespace=
          host: 'facebook.com'
          user: '{0}/user/42342342'
      namespace.user = namespace.user.format namespace.host
      

      【讨论】:

        猜你喜欢
        • 2017-03-18
        • 1970-01-01
        • 2017-03-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-08-08
        相关资源
        最近更新 更多