在 Python 2.7 中转换二维列表中的字符串字符
converting string characters in 2D list in Python 2.7
我创建了一个二维列表,这是我尝试过的
list = [[] for i in range(2)]
data = 'abcd'
for row in data:
for col in row:
list[:0] = data
我得到了
['a','b','c','d', 'a','b','c','d','a','b','c','d','a','b','c','d']
但我想要的是
['a','b']
['c','d']
有人可以帮忙吗?
以下应该有效:
LIST_SIZE = 2
lists = [[] for _ in range(LIST_SIZE)]
data = 'abcd'
for i in range(LIST_SIZE):
for j in range(LIST_SIZE):
letter = data[LIST_SIZE * i + j]
lists[i].append(letter)
您无需迭代即可完成此操作:
data = 'abcd'
r = [list(data[:2]) , list(data[2:])]
print(r)
#[['a', 'b'], ['c', 'd']]
我创建了一个二维列表,这是我尝试过的
list = [[] for i in range(2)]
data = 'abcd'
for row in data:
for col in row:
list[:0] = data
我得到了
['a','b','c','d', 'a','b','c','d','a','b','c','d','a','b','c','d']
但我想要的是
['a','b']
['c','d']
有人可以帮忙吗?
以下应该有效:
LIST_SIZE = 2
lists = [[] for _ in range(LIST_SIZE)]
data = 'abcd'
for i in range(LIST_SIZE):
for j in range(LIST_SIZE):
letter = data[LIST_SIZE * i + j]
lists[i].append(letter)
您无需迭代即可完成此操作:
data = 'abcd'
r = [list(data[:2]) , list(data[2:])]
print(r)
#[['a', 'b'], ['c', 'd']]