这次给大家带来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中文网其它相关文章!
推荐阅读:
Atas ialah kandungan terperinci python字符串如何转为二维数组. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!