【发布时间】:2016-10-03 21:23:00
【问题描述】:
我已经被这个问题困扰了一段时间。基本上,下面的get_text_value(text) 代码传递了一个单词字符串,它提取每个单词的第一个和最后一个字母,将其与letter_values 匹配,并根据匹配的第一个和最后一个单词的数字之和给出最终值跟上。到目前为止,我只能“提取”整个字符串的第一个和最后一个字母,而不是每个单词。
我知道我打算将字符串转换为列表,但我不完全确定如何去做。任何帮助将不胜感激。谢谢!
def get_text_value(text):
letters = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z']
letter_values = [1, 4, 2, 3, 1, 4, 3, 4, 1, 7, 7, 4, 6, 6, 1, 3, 9, 2, 2, 2, 1, 8, 5, 9, 9, 9]
text_value = 0
text = text.lower()
for i in text:
if text[0] and text[-1] in letters:
letters_index_1 = letters.index(text[0])
letters_index_2 = letters.index(text[-1])
text_value = letter_values[letters_index_1] + letter_values[letters_index_2]
return text_value
def test_get_text_value():
print("1. Text value:", get_text_value("abracadabra"))
print("2. Text value:", get_text_value("a b"))
print("3. Text value:", get_text_value("enjoy Today"))
print("4. Text value:", get_text_value(""))
text = "Be yourself everyone else is already taken"
text_value = get_text_value(text)
print("6. Text:", text)
print("6. Text value:", text_value)
【问题讨论】:
-
用空格分割字符串以获得单个单词。然后获取每个单词的第一个和最后一个字母。
标签: python string list python-3.x