2014-11-23 96 views
-1

我正在嘗試使格式字符串做如下所示的操作。使格式字符串在字符後對齊整數

I lost 10 turtles  Total: 20 Turtles 
I lost 5 turtles  Total: 15 Turtles 

我想出了這個字符串"I lost {:>2} {:<13}Total:{:<}".format(10,"turtles",20)反正是有擺脫{:<13}[,"turtles"],但仍產生相同的結果?

+0

它很清楚只需更換'{:<13 }'用'海龜'你想要這個嗎? – Kasramvd 2014-11-23 14:03:55

+0

我也認爲這是要做的事情,但是這樣做時對齊不統一。這是需要的{:<13}',我想要的是第一個整數具有它自己的類型,海龜。 – Emilgardis 2014-11-23 14:07:47

+0

''我輸了{:<13}總數:{:<}「。格式(」10個海龜「,」20個海龜「)''? – Kasramvd 2014-11-23 14:13:09

回答

0

turtles格式字符串中:

>>> "I lost {:>2} {:<13}Total:{:<}".format(10, "turtles", 20) 
'I lost 10 turtles  Total:20' 
>>> "I lost {:>2} turtles  Total:{:<}".format(10, 20) # <-------- 
'I lost 10 turtles  Total:20' 

>>> "I lost {:>2} {:<13}Total:{:<} Turtles".format(10, "turtles", 20) 
'I lost 10 turtles  Total:20 Turtles' 
>>> "I lost {:>2} turtles  Total:{:<} Turtles".format(10, 20) # <-------- 
'I lost 10 turtles  Total:20 Turtles' 
+0

這正是我目前正在做的問題是如果有反正刪除它。我覺得格式化程序不需要替換總是會是相同的東西。 – Emilgardis 2014-11-23 14:03:02

+0

@Emilgardis,見第二條和第四條代碼行。 – falsetru 2014-11-23 14:05:36

+0

是的,它可以工作,但它確實看起來像一個相當愚蠢的解決方案(就像你自己把空間) – Emilgardis 2014-11-23 14:10:17

0

你看這個?

>>> "I lost {:<20} Total:{:<}".format("10 turtles","20 turtles") 
'I lost 10 turtles   Total:20 turtles' 

或功能:

>>> def formater(i,j): 
... return "I lost {:<20} Total:{:<}".format("{} turtles".format(i),"{} Turtles".format(j)) 
... 
>>> formater(10,20) 
'I lost 10 turtles   Total:20 Turtles' 
+0

如果第一個格式(長句子)的第一個字符串的第一個格式是「」{ :2}海龜「'。 – Emilgardis 2014-11-23 14:25:49