0
我有一個名爲mac
的列表,它保存了6個字節的mac地址。我想最後一個字節設置爲0,然後我用:Python:如何將值設置爲列表元素
mac[5] = 0
但它給我的錯誤:
TypeError: 'str' object does not support item assignment
如何解決這個問題?
我有一個名爲mac
的列表,它保存了6個字節的mac地址。我想最後一個字節設置爲0,然後我用:Python:如何將值設置爲列表元素
mac[5] = 0
但它給我的錯誤:
TypeError: 'str' object does not support item assignment
如何解決這個問題?
因爲mac
是str
而字符串在Python中是不可變的。
mac = list(mac)
mac[5] = '0'
mac = ''.join(mac) #to get mac in str
或使用bytearray
,它可以用作可變字符串。
>>> x = bytearray('abcdef')
>>> x
bytearray(b'abcdef')
>>> x[5] = '0'
>>> x
bytearray(b'abcde0')
>>> str(x)
'abcde0'
劑量這種方式添加一個字符'0'或只是0? – TieDad
@EvanLi它將索引5(或第6個字符)中的字符設置爲「0」。 – thkang
不要忘記'''.join((mac [:5],'0',mac [6:]))' – mgilson