簡體   English   中英

Python中的格式語法

[英]Format syntax in Python

有沒有辦法以更好的方式編寫這行代碼:

"""{a};{b};{c};{d}""".format(a = myDictionary[a], b = myDictionary[b], c = myDictionary[c], d = myDictionary[d])

這樣的事情?

"""{a};{b};{c};{d}""".format(myDictionary)

在字典上使用關鍵字擴展

"{a};{b};{c};{d}".format(**myDictionary)

format可以取消引用其參數:

>>> D=dict(a=1,b=2,c=3,d=4)
>>> '{0[a]};{0[b]};{0[c]};{0[d]}'.format(D)
'1;2;3;4'

可以在類上使用類似的語法:

>>> class C:
...  a=1
...  b=2
...  c=3
...  d=4
...
>>> '{0.a};{0.b};{0.c};{0.d}'.format(C)
'1;2;3;4'

請參閱格式規范迷你語言

"""%(a)s;%(b)s;%(c)s;%(d)s""" % myDictionary

盡管存在很多爭議和推動,傳統的字符串格式化操作符“%”沒有動機(也沒有跡象)可以消失,因為很多事情都比較簡單。

這是你要找的?

di = {
  'key1': 'value1',
  'key2': 'value2',
  'key3': 'value3'
}

print "value of key3 is: %(key3)s" % di

key3的值是:value3

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM