![](/img/trans.png)
[英]What's the difference between these codes? Why do they have different outputs?
[英]Why do the two codes below generate different outputs?
a = [b'food']
b= list(b'food')
產量
a = [b'food']; b = [102, 111, 111, 100]
list(...)
將iterable作為參數。 b'food'
是bytes
類型,因此list(...)
根據其中的字節創建一個列表( b'f'
, b'o'
,...)。
使用list(...)
相當於[b'food']
將是:
b = list((b'food',))
因為list()
將可迭代項作為參數並解壓縮。
list("123") => ["1", "2", "3"]
第一個創建一個包含一個元素的列表( b'food'
)。
同時, list
函數將給定的可迭代對象轉換為具有其元素副本的列表。 因此,它創建了一個列表,其中包含每個'food'
字母的二進制表示。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.