python或Java中的字符串格式化

时间:2017-09-28 15:32:29

标签: java python

输入:

Flipkart site india ecommerce best   **_-Replacement array_**


{} is {4} online {3} shopping {} in {}    **_-positional argument array_**

输出

Flipkart is best online ecommerce shopping site in India

解释 -

**如果花括号内有数字,则在该索引处打印替换数组的元素,如果该索引存在,否则打印花括号内的任何内容(注意 - 在括号内也可能有单词,在这种情况下只需打印那个词)

**如果花括号内没有任何内容,请从左到右编号为0,1,2 ...并相应地替换为替换数组的相应元素

a=list(input().split())
b=list(input().split())
my(a,b)
def my(a1,b1):
    c=0
    a2=[]
    for i in range(len(b1)):
        if b1[i]=='{}':
            a2.append(a1[c]+" ")
            print(a2)
            c+=1
        elif b1[i]=='{':
            d=b[i][1]-'0'
            a2.append(a1[d]+" ")
            print(a2)
        else:
            a2.append(b1[i]+" ")
            print(a2)
    return a2

这就是我所做的,但是elif部分不起作用。请帮帮我!!

我想开发一个模式匹配器,以便识别花括号({})及其中的数字。但是无法正常使用

1 个答案:

答案 0 :(得分:0)

在python中,您可以非常轻松地使用format命令。

'{} {}'.format('one', 'two')

它将按顺序阅读,因此您可以像这样访问列表的索引。

'{} {}'.format(list[3], list[4])

或者您喜欢的任何订单。