【发布时间】:2011-07-24 02:34:00
【问题描述】:
我正在尝试拆分字符串:
'QH QD JC KD JS'
进入如下列表:
['QH', 'QD', 'JC', 'KD', 'JS']
我该怎么做呢?
【问题讨论】:
-
你是如何尝试拆分字符串的?
-
我向您推荐 Google 一本名为“深入 Python”的免费在线书籍
我正在尝试拆分字符串:
'QH QD JC KD JS'
进入如下列表:
['QH', 'QD', 'JC', 'KD', 'JS']
我该怎么做呢?
【问题讨论】:
>>> 'QH QD JC KD JS'.split()
['QH', 'QD', 'JC', 'KD', 'JS']
返回一个单词列表 字符串,使用
sep作为分隔符 细绳。如果给定maxsplit,最多maxsplit拆分完成(因此, 列表最多有maxsplit+1元素)。如果maxsplit不是 指定,则没有限制 分割数(所有可能的 分裂)。如果给定
sep,则连续 分隔符没有组合在一起 并且被认为是空的 字符串(例如,'1,,2'.split(',')返回['1', '', '2'])。sep参数可能包括 多个字符(例如,'1<>2<>3'.split('<>')返回['1', '2', '3'])。拆分空字符串 使用指定的分隔符返回[''].如果
sep未指定或为None,则 不同的分裂算法是 应用:连续运行 空白被视为单个 分隔符,结果将包含 开头或结尾没有空字符串 如果字符串有前导或尾随 空白。因此,分裂一个 空字符串或由以下组成的字符串 只是带有None分隔符的空格 返回[]。例如,
' 1 2 3 '.split()返回['1', '2', '3'],' 1 2 3 '.split(None, 1)返回['1', '2 3 ']。
【讨论】:
这里简单
a = [x for x in 'abcdefgh'] #['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
【讨论】:
[*'abcdefgh']
可能是这样的:
list('abcdefgh') # ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
【讨论】:
或者为了好玩:
>>> ast.literal_eval('[%s]'%','.join(map(repr,s.split())))
['QH', 'QD', 'JC', 'KD', 'JS']
>>>
ast.literal_eval
【讨论】:
您可以使用返回列表的 split() 函数来分隔它们。
letters = 'QH QD JC KD JS'
letters_list = letters.split()
现在打印 letter_list 的格式如下:
['QH', 'QD', 'JC', 'KD', 'JS']
现在您有了一个可以使用的列表,就像您使用任何其他列表一样。例如基于索引访问元素:
print(letters_list[2])
这将打印列表的第三个元素,即“JC”
【讨论】: