要求:
编写一个程序,用于判断给定字符串中字母在字母表中的位置和是否为偶数。
例如,字母表中的位置:
a = 1
j = 10
z = 26
- 定义函数
is_sum_even()
,参数为string
。 - 在函数内,计算
string
中字母在字母表中的位置和(不区分大小写)。 - 忽略字符串中的非字母符号。
- 如果和为偶数,则返回
True
,否则返回False
。
示例输入
i am king
示例输出
True
解释:
i am king
中字母的位置和为:9 + 1 + 13 + 11 + 9 + 14 + 7 = 64
这里,64是偶数,因此函数返回True
。
代码:
import re
def is_sum_even(string):
# 使用正则表达式匹配字符串中的字母
letters = re.findall(r'[a-zA-Z]', string)
sum1 = 0
for letter in letters:
# 获取字母在字母表中的位置(忽略大小写)
position = ord(letter.lower()) - ord('a') + 1
sum1 = sum1+position
# 判断位置是否为偶数
if sum1 % 2 == 0:
results = 'True'
else:
results = 'False'
return results
# 获取字符串
string = input()
# 调用函数
print(is_sum_even(string))