python中是否有将单词拆分为单个字母列表的功能?例如:
s="Word to Split"
要得到
wordlist=['W','o','r','d','','t','o' ....]
>>> list("Word to Split")
['W', 'o', 'r', 'd', ' ', 't', 'o', ' ', 'S', 'p', 'l', 'i', 't']
最简单的方法可能只是使用list()
,但至少还有一个其他选项:
s = "Word to Split"
wordlist = list(s) # option 1,
wordlist = [ch for ch in s] # option 2, list comprehension.
他们都应该给你你需要的东西:
['W','o','r','d',' ','t','o',' ','S','p','l','i','t']
如前所述,对于您的示例,第一个可能是最可取的,但有些用例可能使后者对于更复杂的东西非常方便,例如,如果您想对项目应用一些任意函数,例如:
[doSomethingWith(ch) for ch in s]
列表函数将执行此操作
>>> list('foo')
['f', 'o', 'o']
滥用规则,结果相同:(x for x in 'Word to split')
实际上是一个迭代器,而不是一个列表。但很可能你不会真正关心。
text = "just trying out"
word_list = []
for i in range(0, len(text)):
word_list.append(text[i])
i+=1
print(word_list)
['j', 'u', 's', 't', ' ', 't', 'r', 'y', 'i', 'n', 'g', ' ', 'o', 'u', 't']
最简单的选择是只使用 list() 命令。但是,如果您不想使用它或者由于某些集市原因它不起作用,您可以随时使用此方法。
word = 'foo'
splitWord = []
for letter in word:
splitWord.append(letter)
print(splitWord) #prints ['f', 'o', 'o']
def count(): list = 'oixfjhibokxnjfklmhjpxesriktglanwekgfvnk'
word_list = []
# dict = {}
for i in range(len(list)):
word_list.append(list[i])
# word_list1 = sorted(word_list)
for i in range(len(word_list) - 1, 0, -1):
for j in range(i):
if word_list[j] > word_list[j + 1]:
temp = word_list[j]
word_list[j] = word_list[j + 1]
word_list[j + 1] = temp
print("final count of arrival of each letter is : \n", dict(map(lambda x: (x, word_list.count(x)), word_list)))