将字符串拆分为python中的列表

时间:2010-11-18 15:31:24

标签: python string split

我有一长串字符,我想将其拆分为单个字符列表。我想将空格也包括在列表的成员中。我该怎么做?

3 个答案:

答案 0 :(得分:11)

你可以这样做:

list('foo')

空格将被视为列表成员(虽然没有组合在一起,但您没有指定需要它)

>>> list('foo')
['f', 'o', 'o']
>>> list('f oo')
['f', ' ', 'o', 'o']

答案 1 :(得分:0)

这里有一些字符串和字符串列表的比较,以及另一种明确表示字符串列表的方法,以便在现实生活中使用list():

b='foo of zoo'
a= [c for c in b]
a[0] = 'b'
print 'Item assignment to list and join:',''.join(a)

try:
    b[0] = 'b'
except TypeError:
    print 'Not mutable string, need to slice:'
    b= 'b'+b[1:]

print b

答案 2 :(得分:0)

这不是原始问题的答案,而是上述评论中的“我如何使用dict选项”(模拟2D数组):

WIDTH = 5
HEIGHT = 5

# a dict to be used as a 2D array:
grid = {}

# initialize the grid to spaces
for x in range(WIDTH):
    for y in range(HEIGHT):
        grid[ (x,y) ] = ' '

# drop a few Xs
grid[ (1,1) ] = 'X'
grid[ (3,2) ] = 'X' 
grid[ (0,4) ] = 'X'

# iterate over the grid in raster order
for x in range(WIDTH):
    for y in range(HEIGHT):
        if grid[ (x,y) ] == 'X':
            print "X found at %d,%d"%(x,y)

# iterate over the grid in arbitrary order, but once per cell
count = 0
for coord,contents in grid.iteritems():
    if contents == 'X':
        count += 1

print "found %d Xs"%(count)

元组是不可变的,可以制作完美的字典键。在分配给它们之前,网格中的单元格不存在,因此如果那是你的话,它对于稀疏数组非常有效。