這次帶給大家python字串如何轉為二維陣列,python字串轉為二維陣列的注意事項有哪些,以下就是實戰案例,一起來看一下。
有一道演算法題題目的意思是在二維陣列裡找到一個峰值。要求複雜度為n。
解題想法是找田字(四邊和中間橫豎兩行)中最大值,用分治法遞歸下一個像限的田字。
在用python定義一個二維數組時可以有list和numpy.array兩種方式,看了幾篇python中二維數組的建立的博客發現大多都是建立的初始化的二維數組,而我需要透過檔案讀取得到的是字串,再把字串轉換成二維數組,找不到解決方法還是決定自己來轉換。
首先,最開始的字串輸出如下,數字之間有空格
想法就是把先按換行符號進行切片,再對每一行的字元再進行一次切片操作,程式碼如下:
但事實上我在用"\n"來進行切片的時候,在末尾留下一個""空的小尾巴,可能是文本中末尾也有一個換行符,所以我在第9行用list.pop()把空的元素去掉了。 (window環境中不需要)
就這樣可以得到list的二維數組了,因為numpy。 array支援比list更多的引索方式,我們用list = np.array(list)把list轉換為numpy.array最後結果如下:
到這裡就完成轉換了,接下來就是寫演算法解題了。總的來說我還是對自己的方法不太滿意,如果有更優雅的轉換二維數組的方法請留言,不勝感激~
相信看了本文案例你已經掌握了方法,更多精彩請關注php中文網其它相關文章!
推薦閱讀:
以上是python字串如何轉為二維數組的詳細內容。更多資訊請關注PHP中文網其他相關文章!