Skip to main content
 首页 » 编程设计

python之python 2.5 的字符串格式

2025年05月04日14xxx_UU

在旧版本的 python 中,'str' 对象没有属性 '如果我尝试格式化字符串将导致格式错误。 params 由类似 [u'name', '12'] 的内容组成。如何在 % 字符串格式中执行以下操作?

def str(params): 
    ...... 
    if params: 
       msg_str = msg_str.format(*params) 

请您参考如下方法:

将列表转换为元组并将其作为格式参数传递:

msg_str = msg_str % tuple(params) 

例子:

>>> lst = [123, 456] 
>>> 'foo %d bar %d' % tuple(lst) 
'foo 123 bar 456' 

注意,它必须是一个元组,直接传递列表是行不通的:

>>> 'foo %d bar %d' % lst 
Traceback (most recent call last): 
  File "<stdin>", line 1, in <module> 
TypeError: %d format: a number is required, not list