2012-03-01 67 views
0

例如我打印的內容是這樣的:有沒有更好的方式來寫str(len(myList))?

print ('Number of Elephants less than %s: %s' % (str(floatB),str(len(myList)))) 

與4個括號結束,不會覺得很Python的!有沒有更好的辦法?這不是一個真正的性能方面的事情,但我只是通過代碼,並希望使它更清潔一點。

回答

4

你可以失去的str()電話:

print('Number of Elephants less than %s: %s' % (floatB, len(myList))) 

這具有完全按照你原來的代碼相同的效果,因爲%s導致自動調用str()有問題的說法。這不是%s您可以使用更具體的%d(爲整數)

注意和%e%E%f%F%g%G浮子。這些format specifiers更靈活,因爲它們允許你指定的位數打印等

+0

我想第二個% s會是%d – Sid 2012-03-01 15:51:52

+0

@Sid你可以使用'%d'來確保它是一個整數,但'%s'也可以。正如答案所述,'%s'的意思是「只是首先通過'str'傳遞它。 – delnan 2012-03-01 15:53:08

+0

謝謝你們。有趣的瞭解這些格式說明 – user1228368 2012-03-01 16:04:42

1

實際上沒有必要爲你做海峽,你可以這樣做:

print 'Number of Elephants less than %s: %s' % (floatB, len(myList)) 
+0

嘿!少一個支架,但只適用於蟒蛇2而不是3:P – mandel 2012-03-01 15:51:58

相關問題