[英]How to split strings (in nested lists) every character?
从文件中读取文本迷宫,包括一系列的墙壁(#)和开口()。
迷宫需要读取为二维数组。
我不知道如何分割每个'#'和''以便它们分开。
只需调用list()
将每个字符单独拆分为列表中的元素
from pprint import pprint as pp
def loadMaze(mazeName):
global grandList
grandList = []
with open(mazeName) as sourceList:
for line in sourceList:
eachList = list(line)
grandList.append(eachList)
pp(grandList)
不要调用.split()
。
eachList = list(line.strip('\n'))
因为string.split()用于通过空格将字符串分隔为子字符串列表:
>>> "a bb ccc".split()
['a', 'bb', 'ccc']
或按字符分隔:
>>> "a/bb/ccc".split('/')
['a', 'bb', 'ccc']
list(some_string)将列出字符串中的字符:
>>> list("a, bb, ccc")
['a', ',', ' ', 'b', 'b', ',', ' ', 'c', 'c', 'c']
叶氏! 您几乎做到了,只是不要分割字符串。
您可以轻松地做到这一点,
with open(mazeName) as sourceList:
for line in sourceList:
grandList.append(list(line))
pp(grandList)
或您自己的方式:
with open(mazeName) as sourceList:
for line in sourceList:
grandList.append([c for c in line])
pp(grandList)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.