Skip to main content
 首页 » 编程设计

python之为什么 Python 给出 ['th' 、 'th' 、 'th' 、 'th' 、 'th' ] 作为 '5 * [' th']' 的结果而不是五个列表

2025年05月04日13shanyou

在 Python 中,为什么这两个 5 * ['th'] 和 [5 * ' th'] 给出几乎相同的结果? 这里的问题是为什么 5* ['th'] 给出的列表是五倍而不是五个列表。

>>>5 * ['th'] 
['th', 'th', 'th', 'th', 'th'] 
>>> [5 * 'th'] 
['ththththth'] 

对于 5 * ['th'] ,预期结果是 5 个列表!

请您参考如下方法:

why do these... give almost the same result?

他们没有。

5 * ['th'] 

这将生成一个包含单个元素 'th' 的列表,然后将其乘以 5。结果是一个包含该元素 5 个副本的列表:

 ['th', 'th', 'th', 'th', 'th'] 

这个列表的长度是5。


[5 * ' th'] 

这会将字符串 ' th' 连接五次,生成字符串 ' th th th th th',然后创建一个以该字符串作为唯一字符串的列表元素。

[' th th th th th'] 

这个列表的长度是1。