簡體   English   中英

在python中替換字符串列表中的字符

[英]Replacing characters from a String List in python

所以我有一個問題,我需要通過提供 x 和 ay 坐標來替換字符串數組中的字符串中的字符。 在這種情況下,輸出應該是,第二個“0b000000”有一個“1”而不是“b”。 但是,它要么替換該數組中的所有“b”,要么不替換任何內容。 這是我的代碼,任何幫助表示贊賞:

def setpixel(x, y):

    byte_array = [
            "0b000000",
            "0b000000",
            "0b000000",
            "0b000000",
            "0b000000",
            "0b000000",
            "0b000000",
            "0b000000"
    ]


    line = byte_array[y - 1]
    element = line[x - 1]

    line.replace(element, "1")

    print(byte_array)



 setpixel(2, 2)

byte_array[y - 1] = line.replace(element, "1")

實際使用str.replace的返回值並使列表反映該更改。 但是如果那個像素的元素在那個字符串中出現不止一次,這將無法可靠地工作。 最安全的:

byte_array[y - 1] = line[:x-1] + "1" + line[x:]

順便說一句,如果你對編碼很認真,你應該習慣於 0-indexing! 一切都會變得很有意義;-)

暫無
暫無

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

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