簡體   English   中英

Python更改字節數組的長度

[英]Python change the length of a bytearray

我試圖在 python 中將一個字節數組的內容復制到另一個字節數組,但是我的代碼bytearray1[:] = bytearray2 ,但這不起作用。 是不是因為我用bytearray2 = bytearray()初始化了第二個 bytearray ,因此bytearray2是空的? 如果是這樣,有沒有辦法初始化它,然后動態地將長度更改為我選擇的整數? 謝謝!

python適用於引用我不確定你要做什么,如果這是最好的方法:)也許你應該發布一些代碼。

不管你尋求的答案可能是深拷貝。 如果你想沿着這條路走下去,我會檢查 copy 和 deepcopy 以確保你在做什么。 https://docs.python.org/3.6/library/copy.html

bytearray2 = bytearray()將創建一個空字節數組。

當您使用bytearray1[:] = bytearray2賦值時,它會將bytearray1[:] = bytearray2的值(即沒有)復制到 bytearray1。

這在我的機器上完美運行,並給我留下了 2 個空字節數組。

你期待發生什么?


關於你的第二個問題:

b = bytearray()
b = bytearray(100)

將首先創建一個空字節數組,然后創建一個長度為 100 的字節數組,初始化為 0。它可能是也可能不是同一個對象,但由於 python 缺少指針,它具有預期的效果。

暫無
暫無

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

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