看完這些:
Special use of args/kwargs
https://www.python.org/dev/peps/pep-3102/
What does ** (double star) and * (star) do for parameters?
https://docs.python.org/3.5/library/string.html#formatstrings爲什麼我必須使用*在str.format列表的前面(* ARGS,** kwargs)
我想可以肯定我非常理解:str.format(*args, **kwargs)
如果uniques
是兩個整數,如[0, 0]
,我會在一個循環與COND例如使用列表銀行足球比賽遞增的第一要素,沒有條件來增加第二,用:
print('Task finished. {0!s} retrieved out of {1!s} tested'.format(*uniques))
我必須使用*uniques
因爲代替uniques
將作爲一個元組格式傳遞。但如果我確實使用
print('Task finished. {0.[0]} retrieved out of {0.[1]} tested'.format(uniques))
它會引起錯誤值:ValueError: Empty attribute in format string
。使用圍繞uniques
的括號不起作用。我真的不明白爲什麼?有人可以澄清嗎?
在第一種情況下,解壓後的列表是否轉換爲元組,然而在第二種情況下,這不是因爲列表不能立即通過格式轉換爲元組,所以與format(uniques[0], uniques[1])
相同?如果我是對的,爲什麼會這樣呢,因爲有一個tuple(list)
函數可以做到這一點,所以它非常簡單?
'...'。格式(*(uniques,))是否有效? – Schore
不,它不。感謝您的幫助。當你回答時,我詳細闡述了我的文章,並在最後進行了編輯? –
對不起,我沒有正確地閱讀這個問題:) – Schore