【发布时间】:2016-07-02 08:20:56
【问题描述】:
问题来了:
- 将输入字符串替换为以下内容:第一个和最后一个字符,以两者之间不同字符的计数分隔。
- 输入字符串中的任何非字母字符都应出现在输出字符串中的原始相对位置。
这是我到目前为止的代码:
word = input("Please enter a word: ")
first_character = word[0]
last_character = word[-1]
unique_characters = (list(set(word[1:-1])))
unique_count = str(len(unique_characters))
print(first_character[0],unique_count,last_character[0])
对于第二部分,我曾考虑过使用正则表达式,但是我无法完全理解正则表达式,因为它不是我曾经使用过的东西。
【问题讨论】:
-
类似this?我猜
Testers应该换成T5s。 -
不,我们只想要第一个和最后一个字符之间的唯一字符。所以 T4s 是正确的。
-
好,然后ideone.com/IaYfBZ?
len(''.join(set(m.group(2))))应该得到唯一字符的计数。 -
一个字母的单词呢?他们应该保持原样,对吧? 2个字母的单词呢?
"Ts"->T0s或Ts?
标签: regex string python-3.5