2017-05-03 49 views
-1

如果我有第二個字符串,sub_str取決於其他字符串main_str,那麼我最好的方式來構建格式化函數中的字符串。 我已經使用string.format(string.format(),xxx)。但它只是不會似乎Python的我用格式函數中的另一個字符串構建字符串?

def func(name, d): 
    main_str = 'Hi customer {}' 
    sub_str = '{}: Today is {}'.format(main_str.format(name), d) 
    print(sub_str) 

func('jo', 'wed') 
func('Ma', '2017') 

我想是這樣的:

Hi customer jo: Today is wed 
Hi customer Ma: Today is 2017 
+2

在這種情況下,你可以只你好{客戶{}:今天是'格式(名稱,d)' - 這在我想的一般情況下並不適用,你可能會堅持使用像你寫的那樣的解決方案。有了這個說法,我不確定我可以設想用例 - 你需要做一般的方法... – mgilson

回答

1

你可以做一切,在只有一步:

def func(name, d): 
    sub_str = 'Hi customer {}: Today is {}'.format(name, d) 
    print(sub_str) 
+0

這是兩個步驟。一步是'print('嗨客戶{}:今天是格式(名稱,d))'。 ';-)' – martineau

+0

是的,但我正在談論建立字符串。 –

+0

我真的不能'''sub_str ='嗨客戶{}:今天是{}'。format(name,d)'''因爲在我的情況下,main_str實際上是從其他類獲得的變量 – sangbe1192

相關問題